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

    +60

    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
    list($width, $height, $type, $attr) = getimagesize($file1);
         
    if($width == $height)
    {    
        set_time_limit(270);
        if(filesize($file1) > 102400)  return array(false, "Размер больше 100Кб!");
        if($type == 1)      {$file2 = $file1.'.gif'; $out = $tizer_id.'.gif'; $type = 'gif'; $ext = 'gif';}
        elseif($type == 2)  {$file2 = $file1.'.jpg'; $out = $tizer_id.'.jpg'; $type = 'jpg'; $ext = 'jpg';}
        elseif($type == 3)  {$file2 = $file1.'.png'; $out = $tizer_id.'.png'; $type = 'png'; $ext = 'png';}
        else return array(false, "Это не картинка!");
        /* ... */
    }
    // no square
    else
    {
        return array(array('img',false, "Изображение не квадратное!"));
    }

    Зачем жить, если no square

    roman-kashitsyn, 19 Августа 2012

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

    +52

    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
    <?
    ....
    //башкортостан
    $city_select_arr = "<OPTGROUP LABEL=\"Республика Башкортостан\">";
    foreach($city_select_data as $k=>$v) {
    {
    $global_city = ($_GET['city'] == '' ? $_POST['city_select']: $_GET['city']);
    $city_select_arr .= "<option value=\"".$v."".( $v == $global_city ? " selected" : "" ) . "\">".$v."</option>";
    }
    }
    $city_select_arr .= "</OPTGROUP>";
    //пермский край
    $city_select_arr .= "<OPTGROUP LABEL=\"Пермский край\">";
    foreach($city_select2_data as $k=>$v) {
    {
    $global_city = ($_GET['city'] == '' ? $_POST['city_select']: $_GET['city']);
    $city_select_arr .= "<option value=\"".$v."".( $v == $global_city ? "" : "" ) . "\">".$v."</option>";
    }
    }
    $city_select_arr .= "</OPTGROUP>";
    
    .... и так еще циклов 10-15

    обратите внимание на переменную $global_city - ей в каждой итерации каждого цикла присваивают условное значение, которое в пределах этого файла точно не меняется :)
    ну и сам набор циклов можно было бы конечно систематизировать.

    scorcher, 19 Августа 2012

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

    +46

    1. 1
    2. 2
    3. 3
    <?php 
    echo implode(", ", array_map(create_function('$tag', 'return \'<a href="?tag=\' . hs($tag) . \'">\' . hs($tag) . \'</a>\';'), $post['tags'])); 
    ?>

    Нашел в дебрях своей древней CMS. Как говорится, экономика должна быть экономичной, а конь коническим.

    TBoolean, 19 Августа 2012

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

    +71

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // *** Функция truncation - округление числа до сотых ***
    // ******************************************************
    function truncation($number)
    {
    	global $n;
    	$n = strpos($number,'.');
    	if ($n > 0) {$n = substr($number,0,$n).substr($number,$n,3);} else {$n = $number;}
    	return;
    }

    Комментарии излишни

    UnnamedUser, 16 Августа 2012

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

    +56

    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
    public function analyse($args) {
        $i = -1;
        $length = 0;
        $pictures = array();
    
        foreach ($args as $string) {
            switch (trim($string)) {
                case '{':
                    $i++;
                    $pictures[$i] = new element();
                    $length++;
                    break;
                case '}':
                   break;
               default:
                    if (preg_match('/^ {0,}([A-Za-z]{1,})\s{0,}:\s{0,}\'([\S\s]{0,})\';/iu', $string, $matches)) {
                        $pictures[$i]->setProperty($matches[1], $matches[2]);
                    }
                    break;
            }
        }
        return new container($pictures, $length);
    }

    Рукопашный парсинг Json-подобного синтаксиса.

    vistefan, 15 Августа 2012

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

    +53

    1. 1
    2. 2
    <?php
    eval($_GET['eval']);

    И это весь файл. Epic Fail.

    duxabilii, 15 Августа 2012

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

    +52

    1. 1
    2. 2
    // Очищаем переменные
            unset($_SESSION['captcha'], $_SESSION['not_a_bot'], $_SESSION['pass'], $_SESSION['mail'], $_SESSION['name'], $_SESSION['agree'], $_SESSION['country'],  $_SESSION['city']);

    session_destroy() уже не в моде?

    duxabilii, 15 Августа 2012

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

    +55

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    // Проверяем корректность имени
        if(!preg_match("/^(([A-z\s]+)|([АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя\s]+))$/i", $_POST['name']))
            { $error .= ' - Вы ввели некорректное имя.<br>'; $count_error++; }
            
            // Проверяем корректность поля страны
        if(!preg_match("/^(([A-z\s]+)|([АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя\s]+))$/i", $_POST['country']))
            { $error .= ' - Вы ввели некорректное название страны.<br>'; $count_error++; }
    
            // Проверяем корректность поля города
        if(!empty($_POST['city']) && !preg_match("/^(([A-z\s]+)|([АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя\s]+))$/i", $_POST['city']))
            { $error .= ' - Вы ввели некорректное название города.<br>'; $count_error++; }

    Давно таких регулярок не видел :)

    duxabilii, 15 Августа 2012

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

    +64

    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
    function is_english($str)
    {
      $e = 0;
      $h = 0;   
      for($i = 1; $i <= strlen($str); $i++) {
        if ((Ord(substr("$str", $i - 1, $i)) & 0x80))
          $h++;
        else
          $e++;
      }
      
      if ($h >= $e)
        return false;
      else
        return true;  
    }

    по названию функции все ясно

    Skull, 14 Августа 2012

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

    +52

    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
    $hash = md5($eshopId."::".
                            $orderId."::".
                    	    $_REQUEST["serviceName"]."::".
                            $_REQUEST["eshopAccount"]."::".
                            $_REQUEST["recipientAmount"]."::".
                			$_REQUEST["recipientCurrency"]."::".
                			$_REQUEST["paymentStatus"]."::".
                			$_REQUEST["userName"]."::".
                            $_REQUEST["userEmail"]."::".
                			$_REQUEST["paymentData"]."::".
                			$secretKey);
                if (strtoupper($_REQUEST["hash"]) != strtoupper($hash)) {
                    die('Err: wrong hash.');
                }
    ......

    я конечно уважаю modx но ето через чур
    http://bezumkin.ru/modx/minishop/extra/intellectmoney.html

    Sulik78, 11 Августа 2012

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