1. PHP / Говнокод #17390

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    if ($n > '25') {
        $list = floor($n / 25) + 1;
        $str .= '<div id="srt_page" align="center">';
        for ($q = 1; (($q) <= $list); $q++) {
            if ((((isset($_GET['page'])) && ($_GET['page'] == $q)) || ((!isset($_GET['page'])) && ($q == 1))))
                $str .= ' <b>' . $q . '</b> ';
            else {
                if ((($q == ($pg - 1)) && (($pg - 1) != 1) && (($pg - 1) != $list)) || (($q == ($pg - 2)) && (($pg - 2) != 1) && (($pg - 2) != $list)) || (($q == ($pg - 3)) && (($pg - 3) != 1) && (($pg - 3) != $list)) || (($q == ($pg - 4)) && (($pg - 4) != 1) && (($pg - 4) != $list)) || (($q == ($pg + 1)) && (($pg + 1) != 1) && (($pg + 1) != $list)) || (($q == ($pg + 2)) && (($pg + 2) != 1) && (($pg + 2) != $list)) || (($q == ($pg + 3)) && (($pg + 3) != 1) && (($pg + 3) != $list)) || (($q == ($pg + 4)) && (($pg + 4) != 1) && (($pg + 4) != $list)) || ($q == $list) || ($q == 1)) {
                    if (($q == $list) && (($pg + 4) < ($list - 1)))
                        $str .= '...';
                    $str .= ' <a class="link_page" href="?page=' . $q . '"> ' . $q . ' </a> ' . "\n";
                    if (($q == 1) && (($pg - 4) > 2))
                        $str .= '...';
                }
            }
        }
        $str .= '</div>';
    }
    return $str;

    Кто не понял, это такой pagination %))

    AgentSIB, 30 Декабря 2014

    Комментарии (1)
  2. PHP / Говнокод #17384

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    <?php
    function clear($field){
        $field = htmlspecialchars($field);
        $field = str_replace("\"","", $field);
        $field = str_replace("'","\'",$field);
     
        return $field;
    }
      if(isset($_POST['name'])){
       $name = clear($_POST['name']);
        echo $name;
      }
    ?>
    <form method="post">
     <p>you name:<br>
     <input name="name" type="text" value="">
     </p>
     <input type="submit" value="Send">
    </form>

    Прафисианналы "PHP" пишут защиту от XSS.
    Отсюда: http://mzcoding.com/php_articles/xss__csrf__ataki_i_zashhita_ot_nikh/11/

    gost, 29 Декабря 2014

    Комментарии (17)
  3. PHP / Говнокод #17382

    +156

    1. 1
    2. 2
    3. 3
    $permissions = Array(
            'add'       => array('custom_order_send', 'send_termin_request'),
    		'insert'    => Array('custom_order_send', 'send_termin_request'),

    Elfet, 29 Декабря 2014

    Комментарии (0)
  4. PHP / Говнокод #17381

    +169

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    function
    enc($str,$k)//$str - входная строка, $k - ключ от 0 до f
    {
    $m=floor(strlen($str)/2);
    $a=strrev(substr($str,0,$m));
    $b=strrev(substr($str,$m));
    $c=$a.$b;
    $s=bin2hex($c);
    switch($k)
    {
    case '0':$c0='h';$c1='y';$c2='j';$c3='z';$c4='i';$c5='g';$c6='x';$c7='k';$c8='s';$c9='w';$ca='p';$cb='l';$cc='q';$cd='m';$ce='v';$cf='t';break;
    case '1':$c0='u';$c1='k';$c2='x';$c3='m';$c4='s';$c5='w';$c6='r';$c7='z';$c8='q';$c9='t';$ca='g';$cb='v';$cc='o';$cd='y';$ce='n';$cf='i';break;       
    case '2':$c0='i';$c1='u';$c2='n';$c3='k';$c4='y';$c5='x';$c6='o';$c7='m';$c8='q';$c9='s';$ca='g';$cb='v';$cc='w';$cd='r';$ce='t';$cf='z';break;
    case '3':$c0='k';$c1='j';$c2='z';$c3='x';$c4='q';$c5='s';$c6='n';$c7='i';$c8='l';$c9='r';$ca='g';$cb='p';$cc='w';$cd='y';$ce='v';$cf='m';break;
    case '4':$c0='m';$c1='g';$c2='p';$c3='t';$c4='i';$c5='l';$c6='r';$c7='s';$c8='n';$c9='q';$ca='k';$cb='j';$cc='h';$cd='u';$ce='z';$cf='v';break;
    case '5':$c0='q';$c1='i';$c2='u';$c3='z';$c4='t';$c5='n';$c6='k';$c7='r';$c8='w';$c9='y';$ca='x';$cb='v';$cc='g';$cd='o';$ce='m';$cf='s';break;
    case '6':$c0='s';$c1='l';$c2='h';$c3='i';$c4='t';$c5='k';$c6='r';$c7='q';$c8='o';$c9='v';$ca='w';$cb='x';$cc='n';$cd='u';$ce='p';$cf='j';break;
    case '7':$c0='s';$c1='j';$c2='l';$c3='p';$c4='u';$c5='h';$c6='i';$c7='n';$c8='x';$c9='t';$ca='k';$cb='w';$cc='v';$cd='r';$ce='q';$cf='o';break;
    case '8':$c0='o';$c1='s';$c2='q';$c3='j';$c4='l';$c5='r';$c6='v';$c7='p';$c8='u';$c9='w';$ca='h';$cb='k';$cc='t';$cd='i';$ce='x';$cf='n';break;
    case '9':$c0='v';$c1='h';$c2='t';$c3='y';$c4='j';$c5='m';$c6='q';$c7='z';$c8='i';$c9='l';$ca='p';$cb='g';$cc='x';$cd='w';$ce='s';$cf='k';break;
    case 'a':$c0='k';$c1='v';$c2='h';$c3='s';$c4='t';$c5='w';$c6='x';$c7='y';$c8='j';$c9='g';$ca='p';$cb='m';$cc='q';$cd='l';$ce='z';$cf='i';break;
    case 'b':$c0='i';$c1='k';$c2='z';$c3='v';$c4='h';$c5='l';$c6='q';$c7='s';$c8='t';$c9='m';$ca='p';$cb='w';$cc='x';$cd='g';$ce='j';$cf='y';break;
    case 'c':$c0='y';$c1='i';$c2='k';$c3='j';$c4='z';$c5='g';$c6='v';$c7='x';$c8='h';$c9='w';$ca='p';$cb='l';$cc='q';$cd='m';$ce='t';$cf='s';break;
    case 'd':$c0='s';$c1='y';$c2='t';$c3='i';$c4='k';$c5='m';$c6='j';$c7='q';$c8='l';$c9='z';$ca='g';$cb='p';$cc='w';$cd='v';$ce='h';$cf='x';break;
    case 'e':$c0='u';$c1='z';$c2='o';$c3='k';$c4='q';$c5='j';$c6='t';$c7='i';$c8='w';$c9='g';$ca='x';$cb='p';$cc='m';$cd='n';$ce='r';$cf='l';break;
    case 'f':$c0='l';$c1='u';$c2='r';$c3='z';$c4='o';$c5='n';$c6='m';$c7='k';$c8='q';$c9='p';$ca='x';$cb='j';$cc='t';$cd='g';$ce='w';$cf='i';break;
    }
    $f=str_replace('0',$c0,$s);
    $f=str_replace('1',$c1,$f);
    $f=str_replace('2',$c2,$f);
    $f=str_replace('3',$c3,$f);
    $f=str_replace('4',$c4,$f);
    $f=str_replace('5',$c5,$f);
    $f=str_replace('6',$c6,$f);
    $f=str_replace('7',$c7,$f);
    $f=str_replace('8',$c8,$f);
    $f=str_replace('9',$c9,$f);
    $f=str_replace('a',$ca,$f);
    $f=str_replace('b',$cb,$f);
    $f=str_replace('c',$cc,$f);
    $f=str_replace('d',$cd,$f);
    $f=str_replace('e',$ce,$f);
    $f=str_replace('f',$cf,$f);
    return $f;
    }

    "От SQL иньекции проще простого защиться при помощи шифрования входных данных перед вставкой их в запрос к базе данных...И не надо ничего мудрить со специальными функциями....И соответственно в базе данные будут храниться в зашифрованном виде...Пример функции для кодирования:"

    Отрыто в комментариях к статье, рассказывающей о встроенных в php алгоритмах шифрования.
    А ведь это лишь функция для шифровки. Есть еще и для дешифровки. Даже для говнокода многовато букавок. (:

    ElForastero, 29 Декабря 2014

    Комментарии (33)
  5. PHP / Говнокод #17377

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    <span class="n2"><?//$productAttr
                if ($cpage->title == 'Поршневой насос') {
    			echo $cpage->title;
    			}
    			else {echo $nm." ".$cpage->title; }?></span>
    
    if(isset($productA) && !empty($productA)){
    				echo '<span class="tehno" style="font-size:12px; text-align: left; heifht:90px;">';
    				foreach($productA as $k => $v){
    					if($v['product_id']==$cpage->id){
    						if(!empty($v['ProductAttrValue'])) {
    						
    							if ($v['AttrName'] == 'Вес') { $prep = 'кг'; }
    							else if ($v['AttrName'] == 'Дальность подачи по горизонтали') { $v['AttrName'] = 'Дальность подачи'; $prep = 'м'; }
    							else if ($v['AttrName'] == 'Производительность') { $prep = 'м3/ч'; }
    							else if ($v['AttrName'] == 'Высота подачи') { $prep = ''; }
    						
    							echo $v['AttrName'].': '.$v['ProductAttrValue'].' '.$prep.'<br>';
    						}
    					}
    				}	
    				echo '</span>';
    }

    И такого кода по всему проекту ооооооочень много =(

    farit_slv, 26 Декабря 2014

    Комментарии (14)
  6. PHP / Говнокод #17376

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    foreach ($mass AS $productId => $colorsList)
            {
                foreach ($colorsList AS $colorId => $sizesList)
                {
                    foreach ($sizesList AS $sizeId => $options)
                    {
                        $this->setTable('shop_products')
                             ->update(array(
                                    'price' => $options['price']
                                ),
                                $this->getAdapter()->quoteInto('id = ?', $productId)
                             );
                        break;
                    }
                }
            }

    Автор пытается взять первый элемент многомерного массива вот такой конструкцией

    p0p, 26 Декабря 2014

    Комментарии (10)
  7. PHP / Говнокод #17368

    +159

    1. 1
    $name=$modelName.'['.str_replace(']','][',trim(strtr($attribute,array(']['=>']','['=>']')),']')).']';

    Один там фреймворк

    Fike, 25 Декабря 2014

    Комментарии (0)
  8. PHP / Говнокод #17367

    +164

    1. 1
    2. 2
    3. 3
    if (date("Y", strtotime($date)) == 1970) {
        $date = date("r");
    }

    Индус проверяет заполненность даты (необязательный параметр, по умолчанию null).

    jbot, 25 Декабря 2014

    Комментарии (0)
  9. PHP / Говнокод #17365

    +148

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    <html>
        <head>
            <title>Тест</title>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
        </head>
        <body>
            <div align="center">
                <h1>Задание</h1>
                Написать решение c использованием ООП, которое позволяет переводить целые числа в каком-нибудь диапазоне (c миллионами включительно) в текст ( разговорный)<br>
                на трех языках (рус., англ., укр.)
            </div>
            <form action="receivenumber.php" method="post">
                <label for="textnumber">Число:</label>
                <input type="number" id="textnumber" name="textnumber" required 
                       min="-9999999" max="9999999" step="1"/><br>
                <label for="selectlanguage">Выбирите язык:</label>
                <select id="selectlanguage" name="selectlanguage">
                    <option value="eng">English</option>
                    <option value="ukr">Ukrainian</option>
                    <option value="rus" selected>Russian</option>
                </select><br>
                <input type="submit" name="submitnumber" value="Отправить"><br>
            </form>
        </body>
    </html>

    А это файл "index.html", который передает данные скрипту "receivenumber.php"

    ppd, 23 Декабря 2014

    Комментарии (16)
  10. PHP / Говнокод #17364

    +150

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    <html>
        <head>
            <title>Paymentwall. Тестовое задание</title>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
        </head>
        <body>
            <div align="center">
                <h1>Задание</h1>
                Написать решение c использованием ООП, которое позволяет переводить целые числа в каком-нибудь диапазоне (c миллионами включительно) в текст ( разговорный)<br>
                на трех языках (рус., англ., укр.)
            </div>
            <form action="receivenumber.php" method="post">
                <label for="textnumber">Число:</label>
                <input type="number" id="textnumber" name="textnumber" required 
                       min="-9999999" max="9999999" step="1"/><br>
                <label for="selectlanguage">Выбирите язык:</label>
                <select id="selectlanguage" name="selectlanguage">
                    <option value="eng">English</option>
                    <option value="ukr">Ukrainian</option>
                    <option value="rus" selected>Russian</option>
                </select><br>
                <input type="submit" name="submitnumber" value="Отправить"><br>
            </form>
        </body>
    </html>

    А это файл "index.html", который передает данные скрипту "receivenumber.php".

    ppd, 23 Декабря 2014

    Комментарии (1)