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

    +156

    1. 1
    test

    test

    striker, 13 Августа 2009

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

    +149.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
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    <?
    global $db;
    $db=new db(HOST,USER,PASS,DBNAME); //подключение к бд
    class db{
    	public $SumQuerys=false; //Temp Var
    	public $Vtime; //Temp time summ
    	public $td; //Temp date
    	public $db_id= false;
    	public $query_num=0;
    	public $query_id=NULL;
    	public $mysql_error=FALSE; 
    	public $mysql_error_num=NULL;
    	public $last_query=NULL;
    	var $error=0;
    	function __construct($host='',$user='',$pas='',$bd=''){
    		$this->db_id=mysql_connect($host,$user,$pas) or die('db connect error');
    		mysql_select_db($bd,$this->db_id) or die("db: '$bd' select error");
    		mysql_query('SET NAMES utf8');
    	}
    	function __destruct(){
    		$this->close();
    		if ($this->SumQuerys){
    			#print "<table style='font-size:10px;border-collapse:collapse;border:1px dotted black' border=1>".$this->SumQuerys."<tr><td><b>$this->Vtime</b></td><td></td></table>";
    		}
    	}
    	function query($query, $show_error=true){
    		$time = microtime(true);
    		$this->last_query = $query;
    		if(!($this->query_id = mysql_query($query, $this->db_id))){
    			$this->error=1;
    			$this->mysql_error = mysql_error();
    			$this->mysql_error_num=mysql_errno();
    			if($show_error){
    				$this->display_error($this->mysql_error, $this->mysql_error_num, $query);
    			}
    		} else {$this->error=0;}
    		$this->query_num ++;
    		
    		// ----------------------------------------------------------------------------
    		$time = round(microtime(true)-$time,5);
    		if($time>0.003){
    			$alert = "color:red";
    		}
    		$this->Vtime += $time;
    		@$this->SumQuerys .= "<tr style='$alert'><td>".$time."</td><td>".$query.'</td></tr>';
    		//------------------------------------------------------------------------------
    		return $this->query_id;
    	}
    	function qrow($query){
    		$this->query($query);
    		return mysql_fetch_row($this->query_id);
    	}
    	function get_row($query_id = ''){
    		if ($query_id == '') $query_id = $this->query_id;
    		return mysql_fetch_assoc($query_id);
    	}
    	function get_array($query_id = ''){
    		if ($query_id == '') $query_id = $this->query_id;
    		return mysql_fetch_array($query_id);
    	}
    	function fetch($query_id = ''){
    		global $d;
    		if ($query_id == '') $query_id = $this->query_id;
    		return $d=@mysql_fetch_object($query_id);
    	}
    	function fetchAll($field = ''){
    		while ($d=$this->fetch($this->query_id)){
    			if ($field == ''){
    				$arr[] = $d;
    			} else {
    				$arr[] = $d->$field;
    			}
    		}
    		return @$arr;
    	}
    	function qAll($query){
    		$this->query($query);
    		return $this->fetchAll();
    	}
    	function fetch_row($query_id = ''){
    		global $d;
    		if ($query_id == '') $query_id = $this->query_id;
    		return $d=@mysql_fetch_row($query_id);
    	}
    	function qfetch($query){
    		global $d;
    		$this->query($query);
    		return $d=@mysql_fetch_object($this->query_id);
    	}
    	function num_rows($query_id = ''){
    		if ($query_id == '') $query_id = $this->query_id;
    		return mysql_num_rows($query_id);
    	}
    	
    	function insert_id() {
    		return mysql_insert_id($this->db_id);
    	}

    интерестный класс для работы с бд=)

    Heckfi, 13 Августа 2009

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if ( in_array($str, $first) )
    {
        for ( $j = 0; in_array($str . substr("000000000", 0, 9 - strlen("$j")) . $j, $first); ++$i );
        $str = $str . substr( "000000000", 0, 9 - strlen("$j") ) . $j;
    }

    что этот код делает?

    HOmerrt, 13 Августа 2009

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
     $dPh = fopen("photos.cfg", "r");
     while (($aCrow = fgetcsv($dPh, 0, "|", "}")) !== FALSE){
    	$sNof = explode(".", $aCrow[0]);
    	echo "<a href='photo/_html/show.php?ph=$sNof[0]'>\n";
    	echo "\t<img src='photo/_thumbs/$aCrow[0]' alt='$aCrow[1]'>\n";
    	echo "</a>\n";
     }
    ?>

    Скрипт, который создаёт превьюшки со ссылками для фотогаллереи.
    photos.cfg - содержит строки вида: Имя_файла.jpg|Описание, которое видит пользователь.
    show.php - отдельная тема.

    Ambilight, 13 Августа 2009

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

    +153

    1. 1
    2. 2
    $procs=explode('
    ',$procs);

    Отлавливаем перевод строки.
    Не знаю даже говнокод ли это. Это срабатывает в тех случаях когда \r, \n, \r\n бессильны.

    random2, 13 Августа 2009

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

    +153.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
    <?php
            /* ... */
    	$sbj->hasNewMsgs = false;
    	if (User::isLogged()) {
    if (0) {
    		if (/* Condition */) {
    			$sbj->hasNewMsgs = true;
    		}
    }
    	}
            /* ... */
    ?>

    Пишу форум. Выкладываю в публичный доступ более менее стабильную версию. Обнаруживается баг: «когда в теме есть новые сообщения — она не помечается, хотя категория, которая её содержит — помечается, как "с новыми сообщениями"». Неделю ленюсь залезть в исходники, найти, где же этот баг закрался (представляя, сколько кода надо перелопатить). Таки зашёл и сразу к модели, а там...
    Видно, дебажил и забыл убрать «экранизацию»

    Shock, 12 Августа 2009

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

    +160.3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if($x){
    		echo ('Да');
    	}elseif(!$x){
    		echo('Нет');
    	}else{
    		echo('Пора.');
    	}

    Очень таинственный код...

    REM99, 12 Августа 2009

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

    +151.9

    1. 1
    $table_name = "$pub_code"."_"."$lg_code";

    funny-chipmunk, 12 Августа 2009

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $f=file(substr($_SERVER["SCRIPT_NAME"],1));
    if(substr($f[9],1,4)=="url=") {$f[9]='$url=\''.$_POST['def_dir']."';\r\n";}
    if(substr($f[10],1,16)=="root_user_login=") {$f[10]='$root_user_login=\''.$_POST['adm_login']."';\r\n";}
    if(substr($f[11],1,15)=="root_user_pass=") {$f[11]='$root_user_pass=\''.$_POST['adm_pass']."';\r\n";}
    if(substr($f[12],1,12)=="maxfilesize=") {$f[12]='$maxfilesize=\''.$_POST['maxfilesize']."';\r\n";}
    if(substr($f[13],1,20)=="delete_confirmation=") {$f[13]='$delete_confirmation='.$_POST['delete_confirmation'].";\r\n";}
    fwrite(fopen(substr($_SERVER["SCRIPT_NAME"],1), "w"), join('', $f)); /// the script must be in root folder =( I'm too lazy to fix it

    соус ФМа знакомого...strpos для лохов! юзаем substr!=)

    Anderson, 12 Августа 2009

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

    +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
    17. 17
    $htmlhead='<html><head><meta>..............</head><body>';
    $htmlend='</body></html>';
    $table['start']='<table style=...><tr><td>'
    $table['center']='</td><td>';
    $table['end']='</td></tr></table>';
    $menu='<a href=.......>main</a>aaa'
    
    [..........]
    
    function serror($error) {
    global $htmlhead;
    global $table;
    global $menu;
    global $htmlend;
    global $lang;
    echo $htmlhead.$table['start'].$menu ......
    }

    Так грамотно вначале, и тут вдруг...

    Anderson, 12 Августа 2009

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