1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #11310

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if ($_GET['where'] != '') {
    	if ($_GET['where'] != '') {
    		die ("<meta http-equiv='refresh' content='0; url=".$page."?where=".$_GET['where']."'>");
    	} else {
    		die ("<meta http-equiv='refresh' content='0; url=".$page."?pid=".$_GET['pid']."'>");
    	}
    } else {
    	die ("<meta http-equiv='refresh' content='0; url=".$page."?pid=".$_GET['pid']."'>");
    }

    Интересно, в каком случае выполнится второй die()?

    domaster, 27 Июня 2012

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

    +65

    1. 1
    $needDied = $this->battle_data['type'] == 104 ? true : false;

    AndryG, 18 Июня 2012

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

    +65

    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
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    <?php
    
    $str = file_get_contents('source.txt');
    $out = '';
    
    $len = strlen($str);
    $word = '';
    
    $bad_words = array(
        'Аноним',
        'Птн',
        'Сен',
        'Ответ',
        'Пропущено',
        'ответов',
        'изображениями',
        'Нажмите',
        'jpg',
        'png',
        'gif',
        'Кб',
        'x',
    );
    
    $str=str_replace('Нажмите "ответ", чтобы увидеть тред целиком.','', $str);
    $str=str_replace('Показана уменьшенная копия, оригинал по клику.','', $str);
    $str=str_replace('Пропущено ','', $str);
    $str=str_replace(' ответов, из них ','', $str);
    $str=str_replace(' с изображениями.','', $str);
    $str=str_replace('Аноним','', $str);
    $str=str_replace('Ответы','', $str);
    $str=str_replace('Ответ','', $str);
    $str=str_replace('Птн','', $str);
    $str=str_replace('Сен','', $str);
    $str=str_replace('jpg','', $str);
    $str=str_replace('png','', $str);
    $str=str_replace('gif','', $str);
    $str=str_replace('Кб','', $str);
    $str=str_replace('x','', $str);
    
    
    
    for ($i = 0; $i < $len; $i++) {
        $c = $str[$i];
        if (($c >= 'a') && ($c <= 'z') ||
                ($c >= 'A') && ($c <= 'Z') ||
                ($c >= 'а') && ($c <= 'я') ||
                ($c >= 'А') && ($c <= 'Я')
        ) {
            $word.=$c;
        } else {
            if ($word != '') {
                $out.=strtolower($word) . "\r\n";
            }
            $word = '';
        }
    }
    file_put_contents('dictonary.txt', $out);
    ?>

    Из чьей-то пхп-вайпалки для известной имиджборды.
    Генерирует словарь слов из текста, взятого с помощью Ctrl+C с любой из страниц борды.

    7ion, 14 Июня 2012

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

    +65

    1. 1
    $new_array = explode('.sep.', implode('.sep', $old_array));

    Полезная функция с http://www.dzone.com/snippets/re-create-array-index

    Anon8yXubeVu, 08 Июня 2012

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

    +65

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // если нужно вернуть json
    if (request('json', false)) {
    	echo "<html><head><script>
    				document.domain = \"" . substr(\system\config\auth::SESSION_COOKIES_DOMAIN, 1) . "\";
    			</script></head><body>";
    	echo json_encode(array('status' => 'ok',
    											   'data'   => array('hash'     => $file_id,
    																 'duration' => $mediaFile->getDuration(),
    																 'width'    => $mediaFile->getVideoWidth(),
    																 'height'   => $mediaFile->getVideoHeight())));
    	echo "</body></html>";
    }

    А вам слабо вот так выводить JSON?

    WinnerWolf, 08 Июня 2012

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

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    /**
     *
     * @class		admin_members_members_members
     * @brief		Provides methods to deal with the members management for administrators
     */
    class admin_members_members_members extends ipsCommand
    {

    Это из форума IPB

    Arigato, 04 Июня 2012

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

    +65

    1. 1
    2. 2
    3. 3
    <?if (strpos($img, 'no_photo') !== false) {} else {?>     
    	  <img title="<?=util::prepareHTML($a_info['cap'])?>" src="<?=$img?>" width="361" height="238" class="clipart-news-l" alt="<?=util::prepareHTML($a_info['cap'])?>" />         
        <?}?>

    no comment.

    nethak, 31 Мая 2012

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

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $update_result = mysql_query($update) or die("failed");
    	
    	if($update_result != false)
    		header("location: index.php");
    	else
    		die("Something Failed.");

    Rusik58, 30 Мая 2012

    Комментарии (3)
  10. Java / Говнокод #9179

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    public int getSysEmailId() {
            return super.getJdbcTemplate().queryForInt(
                    "SELECT id FROM sys_email");
        }

    Коллега порадовал. Говнонюанс в том, что sys_email имеет структуру (id SERIAL PRIMARY KEY, login text NOT NULL UNIQUE, password text NOT NULL).

    0rt, 20 Января 2012

    Комментарии (1)
  11. Java / Говнокод #9107

    +65

    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
    for (...) {
      Comparator<Date> date_comparator = new Comparator<Date>() {
        @Override
        public int compare(Date s1, Date s2) {
          long n1 = s1.getTime();
          long n2 = s2.getTime();
          if (n1 < n2)
            return -1;
          else if (n1 > n2)
            return 1;
          else
            return 0;
        }
      };
      Date beforeSaveDate = (Date) beforeSaveParam.getValue();
      beforeSaveDate.setSeconds(0);
      Date toSaveDate = (Date) toSaveParam.getValue();
      comparedValue = date_comparator.compare(beforeSaveDate, toSaveDate);
    }

    Задача была сравнить две даты, игнорируя при этом секунды.

    LexeY4eg, 13 Января 2012

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