ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Общие вопросы программирования (https://forum.antichat.xyz/forumdisplay.php?f=206)
-   -   Говнокод отечественного производства на PHP (https://forum.antichat.xyz/showthread.php?t=777725)

Низ 01.10.2019 19:02

Это авторское исполнение редкостного говна на PHP. Многие сомневаются, что смогу их удивить своей кривизной мышления отсутствия грамматики. Давайте посмотрим. Начнем с малого

Код:


Код:

// "Cтраница карнизов" *

else if ($Page == 'cornice') {
if (!$Module or $Page == 'cornice' and $Module == 'category' or $Page == 'cornice' and $Module == 'main' or $Module == 'podcategory') include('module/product/cornice/cornice.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/cornice/material_cornice.php'); 

else if ($Module == 'edit') include('module/product/cornice/edit_cornice.php'); 
}

// "Страница душевая программа" *

else if ($Page == 'shower') {
if (!$Module or $Page == 'shower' and $Module == 'category' or $Page == 'shower' and $Module == 'main' or $Module == 'podcategory') include('module/product/shower/shower.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/shower/materialshower.php'); 

else if ($Module == 'edit') include('module/product/shower/editshower.php'); 
}

else if ($Page == 'washes') {
if (!$Module or $Page == 'washes' and $Module == 'category' or $Page == 'washes' and $Module == 'main' or $Module == 'podcategory') include('module/product/washes/washes.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/washes/materialwashes.php'); 

else if ($Module == 'edit') include('module/product/washes/editwashes.php'); 
}
else if ($Page == 'bath') {
if (!$Module or $Page == 'bath' and $Module == 'category' or $Page == 'bath' and $Module == 'main' or $Module == 'podcategory') include('module/product/bath/bath.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/bath/materiabath.php'); 

else if ($Module == 'edit') include('module/product/bath/editbath.php'); 
}
else if ($Page == 'pencilcase') {
if (!$Module or $Page == 'pencilcase' and $Module == 'category' or $Page == 'pencilcase' and $Module == 'main' or $Module == 'podcategory') include('module/product/pencilcase/pencilcase.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/pencilcase/materialpencilcase.php');

else if ($Module == 'edit') include('module/product/pencilcase/editpencilcase.php');
}
else if ($Page == 'product2') {
if (!$Module or $Page == 'product2' and $Module == 'category' or $Page == 'product2' and $Module == 'main' or $Module == 'podcategory') include('module/product/smes/smes.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/smes/materialsmes.php');

else if ($Module == 'edit') include('module/product/smes/editsmes.php');
}

else if ($Page == 'accessories') {
if (!$Module or $Page == 'accessories' and $Module == 'category' or $Page == 'accessories' and $Module == 'main' or $Module == 'podcategory') include('module/product/accessories/accessories.php');
else if ($Module !== 'material' and $Module !== 'edit') {
    header("HTTP/1.0 404 Not Found");
    exit(include('page/404.php'));
}
else if ($Module == 'material') include('module/product/accessories/materialaccessories.php');
 
else if ($Module == 'edit') include('module/product/accessories/editaccessories.php');
}

Как видите комментирование отсутствует, а собственно зачем? Как не трудно догадаться, идет вызов и инклуд нужных страниц сайта. Категорий 12 , а тут лишь малая часть, тк весь код - большой. Этот пример только для разогрева, дальше будет позоще

kick 01.10.2019 19:09

В тег CODE нужно было закинуть. Ничего плохого не увидел, видели в разы хуже, а то и 10 раз. Возьму фрейм и половина из кода просто отпадёт. Стоит открыть код 1С и там хуже будет

Низ 01.10.2019 19:12

@kick, добавил тэг. Жестко вы меня конечно обломали.... я был уверен, что это редкостное дерьмо. Ладно по позже попробую еще кое-что докинуть

Desquire 01.10.2019 19:38

Цитата:

Сообщение от Низ

// "Cтраница карнизов" *

Дальше можноне смотреть)

Gregory 01.10.2019 19:54

А где код то? Че нам инклуды то показывать, где классы, где функции?

Низ 01.10.2019 20:03

@Gregory, классов естестно нет, потому, что я ими не научился пользоваться. Сейчас приду в чувства и еще выкину

Низ 01.10.2019 20:09

Например ф-ия которая, кроме ошибок практически ничего не выдает. А в идеале должна была делать фильтрацию товара в зависимости от нажатой кнопки

PHP:


Код:

function
Str_result
(
$POST
)
{
if
(
!
isset
(
$_SESSION
[
'Ul_params'
]
)
)
{
$_SESSION
[
'Ul_params'
]
=
0
;
}
else
{
if
(
$_POST
[
'NameUP'
]
)
$_SESSION
[
'Ul_params'
]
=
1
;
else
if
(
$_POST
[
'NameDown'
]
)
$_SESSION
[
'Ul_params'
]
=
2
;
else
if
(
$_POST
[
'PriceUP'
]
)
$_SESSION
[
'Ul_params'
]
=
3
;
else
if
(
$_POST
[
'PriceDown'
]
)
$_SESSION
[
'Ul_params'
]
=
4
;
else
if
(
$_POST
[
'idUP'
]
)
$_SESSION
[
'Ul_params'
]
=
0
;
else
if
(
$_POST
[
'idDown'
]
)
$_SESSION
[
'Ul_params'
]
=
5
;
}
if
(
$_SESSION
[
'Ul_params'
]
==
0
)
return
'`id` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
0
)
return
'`id` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
1
)
return
'`name` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
2
)
return
'`name` DESC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
3
)
return
'`priceflo` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
4
)
return
'`priceflo` DESC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
5
)
return
'`id` DESC'
;
}


òbiòbi верифицированный пользователь. 01.10.2019 20:18

Цитата:

Сообщение от Низ

Например ф-ия которая, кроме ошибок практически ничего не выдает. А в идеале должна была делать фильтрацию товара в зависимости от нажатой кнопки

PHP:


Код:

function
Str_result
(
$POST
)
{
if
(
!
isset
(
$_SESSION
[
'Ul_params'
]
)
)
{
$_SESSION
[
'Ul_params'
]
=
0
;
}
else
{
if
(
$_POST
[
'NameUP'
]
)
$_SESSION
[
'Ul_params'
]
=
1
;
else
if
(
$_POST
[
'NameDown'
]
)
$_SESSION
[
'Ul_params'
]
=
2
;
else
if
(
$_POST
[
'PriceUP'
]
)
$_SESSION
[
'Ul_params'
]
=
3
;
else
if
(
$_POST
[
'PriceDown'
]
)
$_SESSION
[
'Ul_params'
]
=
4
;
else
if
(
$_POST
[
'idUP'
]
)
$_SESSION
[
'Ul_params'
]
=
0
;
else
if
(
$_POST
[
'idDown'
]
)
$_SESSION
[
'Ul_params'
]
=
5
;
}
if
(
$_SESSION
[
'Ul_params'
]
==
0
)
return
'`id` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
0
)
return
'`id` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
1
)
return
'`name` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
2
)
return
'`name` DESC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
3
)
return
'`priceflo` ASC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
4
)
return
'`priceflo` DESC'
;
else
if
(
$_SESSION
[
'Ul_params'
]
==
5
)
return
'`id` DESC'
;
}


Что-то пошло не так

Код:


Код:

if($_SESSION['Ul_params'] == 0) return '`id` ASC';
else if($_SESSION['Ul_params'] == 0) return '`id` ASC';

Много, оч. много if и else if. Пора научится пользоваться switch

Низ 01.10.2019 20:20

@obius, Глянул тех. доки по этому оператору. Скажу честно впервые узнал про него. На тех, на ком учился про этот оператор никогда не говорили

òbiòbi верифицированный пользователь. 01.10.2019 20:24

@Низ, вот пример

Код:


Код:

switch ($_SESSION['Ul_params']) {
        case 0: return '`id` ASC';
        case 1: return '`name` ASC';
        case 2: return '`name` DESC';
        case 3: return '`priceflo` ASC';
        case 4: return '`priceflo` DESC';
        case 5: return '`id` DESC';
        //default: unregistered param!
    }



Время: 14:12