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

    +112

    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
    <?php
    @session_start();
    include("с.php");
    if(isset($_POST['postid'])){
    	if($_POST['PoM']=="plus"){
    		if(isset($_SESSION['userid']) && mysql_num_rows(mysql_query("SELECT * FROM `bans` WHERE `userid`='".@$_SESSION['userid']."';"))==0){
    		$query89=mysql_query("SELECT `from` FROM `blogs` WHERE `bid`='".$_POST['postid']."' LIMIT 1;");
    		if($_SESSION['userid']==mysql_result($query89, 0, 0)){ } else {
    		$get_rating=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$check_vote_plus=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='plus';");
    		$check_vote_minus=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='minus';");
    		if(mysql_num_rows(@$check_vote_minus)){
    		mysql_query("DELETE FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."';");
    		mysql_query("UPDATE `blogs` SET `rating`=".mysql_result($get_rating, 0, 0)."+1 WHERE `bid`='".$_POST['postid']."';");
    		}
    		$get_rating2=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$check_vote_plus3=mysql_query("SELECT `voteid` FROM `blogvotes` WHERE `bid`='".$_POST['postid']."' and `userid`='".$_SESSION['userid']."' and `PoM`='plus';");
    		if(!mysql_num_rows(@$check_vote_plus3)){
    		mysql_query("UPDATE `blogs` SET `rating`=".mysql_result($get_rating2, 0, 0)."+1 WHERE `bid`='".$_POST['postid']."';");
    		mysql_query("INSERT INTO blogvotes(`bid`, `userid`, `PoM`) VALUES('".$_POST['postid']."', '".$_SESSION['userid']."', '".$_POST['PoM']."');");
    		$query6=mysql_query("SELECT `userid`, `username`, `email`, `points`, `reputation` FROM `users` WHERE `userid`='".$_SESSION['userid']."' LIMIT 1");
    		$current_user=mysql_fetch_row($query6);
    		}
    		}
    		}
    		$get_r_rating=mysql_query("SELECT `rating` FROM `blogs` WHERE `bid`='".$_POST['postid']."';");
    		$ratingValue=mysql_result($get_r_rating, 0, 0);
    	}
    }
    ?>

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

    BiggestFox, 23 Апреля 2012

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

    −15

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function _taxonomy_image_exists($tid) {
      if (db_fetch_object(db_query('SELECT path FROM {term_image} WHERE tid=%d', $tid))) {
        return TRUE;
      }
      return FALSE;
    }

    brainstorm, 22 Апреля 2012

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

    +120

    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
    if(isset($_POST['myinfo'])){
    	if(trim($_POST['email'])=="" && !mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `userid`='".$_SESSION['userid']."' AND `vkid`!='';"))){
    		$aSuccess=false;
    		$aErrorType="eEMail";
    		$aErrorMsg="Введите адрес электронной почты.";
    	} elseif(strlen(trim($_POST['email']))>"128" && !mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `userid`='".$_SESSION['userid']."' AND `vkid`!='';"))){
    		$aSuccess=false;
    		$aErrorType="eEMail";
    		$aErrorMsg="Слишком длинный адрес электронной почты.";
    	} elseif(!preg_match("/^([-a-zA-Z0-9._]+@[-a-zA-Z0-9.]+(\.[-a-zA-Z0-9]+)+)*$/", trim($_POST['email'])) && !mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `userid`='".$_SESSION['userid']."' AND `vkid`!='';"))){
    		$aSuccess=false;
    		$aErrorType="eEMail";
    		$aErrorMsg="Некорректный адрес электронной почты.";
    	} elseif(mysql_num_rows(mysql_query("SELECT `email` FROM `users` WHERE `email` = '".htmlspecialchars(trim(strtolower($_POST['email'])))."' AND `userid`!='".$_SESSION['userid']."' LIMIT 1"))>0 && !mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `userid`='".$_SESSION['userid']."' AND `vkid`!='';"))){
    		$aSuccess=false;
    		$aErrorType="eEMail";
    		$aErrorMsg="Пользователь с таким адресом электронной почты уже зарегистрирован.";
    	} elseif(strlen(trim($_POST['about']))>"12000"){
    		$aSuccess=false;
    		$aErrorType="eAbout";
    		$aErrorMsg="Вы предоставили слишком много информации о себе.";
    	} else {
    		if(!mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `userid`='".$_SESSION['userid']."' AND `vkid`!='';"))){
    		$mail="`email`='".htmlspecialchars(trim(strtolower($_POST['email'])))."', ";
    		} else {
    		$mail="";
    		}
    		mysql_query("UPDATE users SET ".$mail."`about`='".mysql_real_escape_string(trim($_POST['about']))."' WHERE userid='".$_SESSION['userid']."';");
    		$aSuccess=true;
    		header("Location: editme.php?msg=SUCCESSFULLY_UPDATED");
    		exit();
    	}
    }

    Код, используемый в моём самописном движке для изменения пользователем своего профиля на сайте.

    BiggestFox, 22 Апреля 2012

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

    +122

    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
    <?php
    $pictures =new Array(4);
    pictures[0]="1.jpg";
    pictures[1]="2.png";
    pictures[2]="3.jpg";
    pictures[3]="4.jpg";
    global $i=0;
    function Next(){
    if($i==3)
    $i=0;
    else
    $i++;
    document.getElementById('pic').setAttribute("src", picture[i]);
    }
    function Prev(){
    if($i==0)
    $i=3;
    else
    $i--;
    document.getElementById('pic').setAttribute("src", picture[i]);
    }
    ?>

    Отличный салат.

    cthulhu25, 22 Апреля 2012

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

    +161

    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
    function translit ($out='') {
    
    		$out = iconv('UTF-8', 'CP1251', $out);
    		
    		$eval = '
    		$out = strtr($out,
    			"абвгдезийклмнопрстуфхцыэАБВГДЕЗИЙКЛМНОПРСТУФХЦЫЭ№",
    			"abvgdezijklmnoprstufhcieABVGDEZIJKLMNOPRSTUFHCIE#"
    		);
    
    		$out = strtr($out, array(
    			"ё"=>"yo", "ж"=>"zh", "ч"=>"ch", "ш"=>"sh", "щ"=>"shh", "ъ"=>"``", "ь"=>"`", "ю"=>"yu", "я"=>"ya",
    			"Ё"=>"Yo", "Ж"=>"Zh", "Ч"=>"Ch", "Ш"=>"Sh", "Щ"=>"Shh", "Ъ"=>"``", "Ь"=>"`", "Ю"=>"Yu", "Я"=>"Ya"
    			));
    		';
    		$eval = iconv('UTF-8', 'CP1251', $eval);
    
    		eval ($eval);
    
    	return iconv('CP1251', 'UTF-8', $out);
    	}

    bot-minurast, 20 Апреля 2012

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // добавление элемента в корзину
    public function basketAdd( $id, $product ) {
    	$basket = $this->getBasket( );
    
    	if ( !isset( $basket[$id] ) )
    		$basket[$id] = array( 'id' => $product['id'], 'price' => $product['price'], 'count' => $product['count'] );
    
    	$this->setBasket( $basket );
    }

    Было обнаружено в предрелизе)
    Надо больше спать...

    psycho-coder, 20 Апреля 2012

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

    +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
    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
    function parseArray( $str ) {
    
    	$out = array();
    
    	$str = trim($str);
    	if ( !$str ) return $out;
    
    	$start = $startKey = false;
    	$quot = $value = $key = '';
    	$keys = $values = array();
    	$k = 0;
    
    	for($i=0; $i< mb_strlen($str, 'UTF-8');$i++ ) {
    
    		$f = mb_substr( $str, $i, 1, 'UTF-8' );
    
    		if ( $f!==false ) {
    
    			if ( $start ) {
    
    				if ( $f == $quot ) {
    
    					$start = false;
    					$values[$k] = $value;
    					$value = $quot = '';
    
    				} else $value .= $f;
    
    			} elseif ( trim($f) ) {
    
    				if ( $startKey ) {
    
    					if ( (string)$f === (string)(int)$f  ) $key .= $f;
    					else {
    
    						$k = (int)$key;
    						$keys[$k] = $k;
    
    						$startKey = false;
    					}
    
    				} elseif ( $f == "'" || $f == '"' ) {
    						$quot = $f;
    						$value = '';
    						$start = true;
    
    				} elseif ( $f == '=' && mb_substr( $str, $i+1, 1, 'UTF-8' ) == '>' ) {
    
    						$keys[$k] = $values[$k];
    						$values[$k] = '';
    
    						$i++;
    
    				} elseif ( $f == ',' ) {
    
    						$keys[$k] = isset($keys[$k])? $keys[$k]:$k;
    						if ( (string)$keys[$k] === (string)(int)$keys[$k] && (int)$keys[$k]>$k ) $k = (int)$keys[$k];
    
    						$k++;
    				} elseif ( (string)$f === (string)(int)$f ) {
    						$key = $f;
    						$startKey = true;
    				}
    			}
    		}
    	}
    
    	if ( sizeof($keys)!=sizeof($values) ) $keys[$k] = isset($keys[$k])? $keys[$k]:$k;
    
    	$out = array_combine( $keys, $values );
    	return $out;
    }

    Парсинг утф8-строки в массив.
    Не, ну а чо, вот ведь понадобилось ведь
    Все замерли в ожидании нового поста. Кто же? Кто же возьмёт даблгет, чёрт его подери?

    bot-minurast, 20 Апреля 2012

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

    +150

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $text="$katnumber|$katname|$name|$zag|$type|$msg|$date|$deldt|$fid|$status|$key|$today|$gorod|$phone||||||$rname|"; 
    
    // соме текстс
    
    $textdt=explode("|", $text);

    NeZeD, 20 Апреля 2012

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

    +150

    1. 1
    2. 2
    $pbl = sscanf($object->getModifiedAt(), '%d-%d-%d %d:%d:%d');
    $this->is_new = ( time() - mktime($pbl[3],$pbl[4],$pbl[5],$pbl[1],$pbl[2],$pbl[0]) ) < 86400;

    u4n, 20 Апреля 2012

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $fld_insurance_estimate_sales = $proformadetail[0]['fld_insurance_estimate_sales'];
    $fld_insurance_estimate_cost = $proformadetail[0]['fld_insurance_estimate_cost'];
    $fld_oceanfright_sales = $proformadetail[0]['fld_oceanfright_sales'];
    $fld_oceanfright_cost = $proformadetail[0]['fld_oceanfright_cost'];
    $fld_adjustment_oceanfright_sales = $proformadetail[0]['fld_adjustment_oceanfright_sales'];
    $fld_adjustment_oceanfright_cost = $proformadetail[0]['fld_adjustment_oceanfright_cost'];

    Не, ну extract($proformadetail[0]) просто никак нельзя сделать :)

    miraage, 20 Апреля 2012

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