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

    +162.2

    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
    $buuuu = $buf;
    if (!strstr($buf, 'No ch') && $buf!='') {
    	$nline = unserialize($buf);
    	foreach ($nline as $key=>$val) { 
    		foreach ($val as $key1=>$val1) {
    			foreach ($val1 as $key2=>$val2) {
    				foreach ($val2 as $key3=>$val3) {
    					foreach ($val3 as $key4=>$val4) {
    						foreach ($val4 as $key5=>$val5) {
    							$key2 = str_replace($arepl, ' ', $key2);
    							$key2 = str_replace(' .', ' ', $key2);
    							$key2 = trim(ereg_replace(" +", ' ', $key2));
    							$oline[$key][$key1][$key2][$key3][$key4][$key5] = $val5;
    						}
    					}
    				}
    			}
    		}
    	}
    
    	$toline = serialize($oline);
    	$fw = fopen('ch.txt', 'w')	;
    	fwrite($fw, $toline);
    	fclose($fw);
    
    	foreach($oline as $key=>$val) {
    		foreach($val as $key1=>$val1) {
    			foreach($val1 as $key2=>$val2) {
    				foreach($val2 as $key3=>$val3) {
    					foreach($val3 as $key4=>$val4) {
    						foreach($val4 as $key5=>$val5) {
    							if ($key5>$last_ch_time) {
    								$last_ch_time = $key5;
    							}
    						}
    					}
    				}
    			}
    		}
    	}
    }

    названия переменных рулят!

    ratik, 10 Августа 2009

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

    +159

    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
    if ($_POST["type"] == "2") {
    	echo '<form name=fm method=post>'.
    	'<select class="f" name="per" onChange="mclick(\'/history.php?type=2&per=\'+document.fm.per.value)">'.
    	'<option value="2"'; if ($per == "2") { print "selected"; }; echo '>'.$lng['history'][14].''.
    	'<option value="5"'; if ($per == "5") { print "selected"; }; echo '>'.$lng['history'][15].''.
    	'<option value="7"'; if ($per == "7") { print "selected"; }; echo '>'.$lng['history'][16].''.
    	'<option value="14"'; if ($per == "14") { print "selected"; }; echo '>'.$lng['history'][17].''.
    	'<option value="30"'; if ($per == "30") { print "selected"; }; echo '>'.$lng['history'][18].''.
    	'<option value="365"'; if ($per == "365") { print "selected"; }; echo '>'.$lng['history'][19].''.
    	'<option value="1000"'; if ($per == "1000") { print "selected"; }; echo '>'.$lng['history'][20].''.
    	'</select>'.
    	'</form>';
    }

    убейте меня

    ratik, 10 Августа 2009

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

    +154.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $res = & $mdb2->query ( " SELECT * FROM manage WHERE parsed = 0 AND timestamp = DATE_FORMAT(now(), '%Y-%m-%d'); ");
    while ( $row = $res->fetchRow ()) {
    …
    try {
    …
    } catch (Exception $e) {
    …
    }
    if (empty($e)) $res = & $mdb2->query ( «UPDATE `user_control`.`manage` SET `parsed` = 1 WHERE `manage`.`ti_uid` ='».$row['ti_uid']."' LIMIT 1; ");
    }

    $res

    random2, 10 Августа 2009

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

    +157.1

    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
    if ($_GET['logout']) {
    	$user_key = '';
    } else {
            WAP::checkLogin();
    	$user_key = WAP::getUserKey();
    	if (!$user_key) {
    		# TODO FIX HUGE FUCKING SECURITY HOLE
    		$qs = $_SERVER['QUERY_STRING'];
    		if (trim($qs)) {
    			$user_row = getUserRowByUserID($qs);
    			if ($user_row) {
    				$user_key = $user_row['UsKey'];
    				if (Config::get('wap_sessions.enabled')) {
    					Session::setUserKey($user_key);
    				} else {
    					$_GET['cid'] = $qs;
    				}
    			}
    		}
    	}
    }

    Комментарии в тексте программы оставлены без изменений :)

    e.lamskoy, 10 Августа 2009

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

    +154.9

    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
    $url = URL::uri('chatsW.php', $params);
    	$chatters_link=new HAW_link('chat rooms',	$url);
    	
    	$url = URL::uri('browseW.php', $params);
    	$people_link    =new HAW_link('people',			$url);
    
    	$url = URL::uri('recentW.php', $params);
    	$photos_link    =new HAW_link('photos',			$url);
    
    	$url = URL::uri('find_area_codeW.php', $params);
    	$find_by_areacode_link =new HAW_link('search by US area code', $url);
    
    	$url = URL::uri('inboxW.php', $params);
    	$messages_link  =new HAW_link('messages' . $message_count_text,	$url);
    	
    	$url = URL::uri('whatsnewW.php', $params);
    	$whatsnew_link  =new HAW_link('what\'s new',		$url);
    
    	$url = URL::uri('invites_mainW.php', $params);
    	$invites_link   =new HAW_link('invites' . $invite_count_text, $url);
    
    	$url = URL::uri('friendsW.php', $params);
    	$my_friends_link=new HAW_link('my friends',		$url);
    
    	$url = URL::uri('phone_bookW.php', $params);
    	$phone_book_link=new HAW_link('my phone book',		$url);
    
    	$url = URL::uri('chatterW.php', $params);
    	$my_chatter_link=new HAW_link('my chatter',		$url);
    
    	$url = URL::uri('my_profileW.php', $params);
    	$my_profile_link=new HAW_link('my profile',		$url);
    
    	$url = URL::uri('settingsW.php', $params);
    	$settings_link  =new HAW_link('settings',		$url);
    	
    	$url = URL::uri('logout.php', $params);
    	$logout_link=new HAW_link("log out", $url);
    	
    	$wapPage->add_link($people_link);
    	$wapPage->add_link($photos_link);
    	$wapPage->add_link($find_by_areacode_link);
    	$wapPage->add_link($chatters_link);
    	$wapPage->add_link($messages_link);
    	$wapPage->add_link($whatsnew_link);
    	$wapPage->add_link($invites_link);
    	$wapPage->add_link($my_friends_link);
    	$wapPage->add_link($phone_book_link);
    	$wapPage->add_link($my_chatter_link);
    	$wapPage->add_link($my_profile_link);
    	$wapPage->add_link($settings_link);
    	$wapPage->add_link($logout_link);

    e.lamskoy, 10 Августа 2009

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

    +158.1

    1. 1
    2. 2
    3. 3
    4. 4
    function fDim($m){
        $vDim = array(1, 3, 5, 7, 8, 10, 12);
        return (in_array($m, $vDim) ? 31 : ($m == 2? 28 : 30));
    }

    Функция возвращает количество дней в месяце. Очень забавный пассаж, ага?

    sharpstream, 10 Августа 2009

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

    +154

    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
    if ( isset( $criterias['name'] ) && ($criterias['name'] = trim( $criterias['name'] )) )
    {
    	$conditions .= empty( $conditions ) ? '(' : ' AND ';
    	$conditions .= "name LIKE '%".addslashes( $criterias['name'] )."%'";
    }
    
    if ( isset( $criterias['address'] ) && ($criterias['address'] = trim( $criterias['address'] )) )
    {
    	$conditions .= empty( $conditions ) ? '(' : ' AND ';
    	$conditions .= "address LIKE '%".addslashes( $criterias['address'] )."%'";
    }
    
    // если условие непустое, то закрываем скобку
    $conditions .= empty( $conditions ) ? '' : ')';

    Вместо использования массива для условий и последующего его объединения

    wunge, 10 Августа 2009

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

    +157.1

    1. 1
    return strtoupper(strtr($str, "йцукенгшщзхъэждлорпавыфячсмитьбюё", "ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮЁ"));

    1C-Bitrix, вот говнищще-то!

    xEviL, 10 Августа 2009

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

    +129.4

    1. 1
    (string) $def == (string) $value

    Видимо о том, что == сравнивает строковые представления программист не знал.

    guest, 09 Августа 2009

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

    +131.3

    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
    function key_check($key) {
     if ($key == '') { return ''; }
     $key = preg_replace("/[^\w\xB2-\xB4\xBF-\xFF\xA5\xA8\xAA\xAF\xB8\xBA\s]/", "", $key );
     if ($key =='_SERVER' OR $key =='_SESSION' OR $key =='_FILES' OR $key =='_REQUEST' OR $key =='GLOBALS') die("<h3>Error variable ".basename(__FILE__)." ".__LINE__."</h3>");
     else return $key;
    }
    
    function str_check($str_val) {
    if ($str_val == '') { return ''; }
                    if(preg_match("/<[^>]*script*\"?[^>]*>/i", $str_val)
                    or preg_match("/<[^>]*object*\"?[^>]*>/i", $str_val)
                    or preg_match("/<[^>]*applet*\"?[^>]*>/i", $str_val)
                    or preg_match("/<[^>]*form*\"?[^>]*>/i"  , $str_val)
                    or preg_match("/&#\d+;{0,1}/i"  , $str_val) ){
                                    die("<h3>ERROR ".basename(__FILE__)." ".__LINE__."</h3>");
                    }
      $str_val = str_replace( "&"            , '&amp;'                 , $str_val );
      $str_val = str_replace( "<!--"         , '&#60;!--'              , $str_val );
      $str_val = str_replace( "-->"          , '--&#62;'               , $str_val );
      $str_val = str_replace( ">"            , '&gt;'                  , $str_val );
      $str_val = str_replace( "<"            , '&lt;'                  , $str_val );
      $str_val = str_replace( "\""           , '&quot;'                , $str_val );
      $str_val = str_replace( "\r"           , null                    , $str_val );
      $str_val = str_notsqlatacs($str_val);
      if (!get_magic_quotes_gpc()){$str_val=addslashes($str_val);}
      return $str_val;
    }
    function str_notsqlatacs($str_val) {
    $searcharray =array('/drop/i','/delete/i','/union/i','/char/i','/benchmark/i','/expression/i','/alert/i','/replace/i','/write/i','/document/i','/window/i','/script/i','/user_pass/i','/unescape/i','/eval/i','/form/i','/applet/i','/object/i','/user_login/i','/setTimeout/i','/onerror/i');
    $replacearray=array('&#100;rop','&#100;elete','&#117;nion','&#99;har','&#98;enchmark','&#69;xpression','&#65;lert','&#82;eplace','&#87;rite','&#68;ocument','&#87;indow','&#83;cript','&#85;ser_pass','&#85;nescape','&#69;val','&#70;orm','&#65;pplet','&#79;bject','&#85;ser_login','/&#83;etTimeout/i','/&#79;nerror/i');//
    $str_val=preg_replace($searcharray, $replacearray, $str_val);
      return $str_val;
    }

    Фрагмент файла ./php/wojs.php "портального движка" WebCodePortalSystem версии 5.2. И вот так вся CMSка - два с половиной мегабайта говна.

    guest, 07 Августа 2009

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