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

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

    +158.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if (!isset($_GET["productID"]))
    {
    	if (isset($_POST["productID"]))
    	{
    		$productID = (int)$_POST["productID"];
    	}
    }
    else
    {
    	$productID = (int)$_GET["productID"];
    }

    Оттуда же

    gorky, 09 Сентября 2009

    Комментарии (3)
  3. 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)
  4. PHP / Говнокод #1385

    +158.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    for( $i = 0 ; $i < strlen( $field_amount ); $i++ ) {
      $letter = substr( $field_amount, $i, 1 );
       if ( $letter == '0' || $letter == '1' || $letter == '2' || $letter == '3' || $letter == '4' || $letter == '5' || $letter == '6' || $letter == '7' || $letter == '8' || $letter == '9' ) {
          $amount .= $letter;
       }
    }
    $field_amount = $amount;

    Разбирая сорцы биллинговой системы...

    guest, 19 Июля 2009

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

    +158

    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
    $sql="select Id as Id from $table_work where SubstatusId=1 and StatusId=6 and ((UNIX_TIMESTAMP()-UNIX_TIMESTAMP(UpdTime))>25200)";
    $result=mysql_query($sql) or die();
    while($row = mysql_fetch_array($result)){
    	$sqlu="update $table_work set StatusId=5, SubstatusId=0 where Id=".$row["Id"];
    	mysql_query($sqlu) or die();
    	$sqlu="CALL set_history(".$row["Id"].",NULL,'Отказ роботом')";   ;Внимание Вопрос, что в черном ящике
    	mysql_query($sqlu) or die();
    }
    
    ; а там просто INSERT 0_o
    CREATE DEFINER=`vvejxoqw`@`localhost` PROCEDURE `set_last_time`(IN `UserId` int,IN `RegionId` int)
    BEGIN
    Insert LastGetQueue (UserId,RegionId,LastGetQueue) VALUE(UserId,RegionId,NOW());
    END$

    Ну и моё любимое SELECT Id AS Id
    p.s. попалась в руки цмc'ка написанная 1С прогером, ребята это ад. По 3 минуты ждешь результата на 8Mhz 8Gb VPS

    gumanoit, 05 Апреля 2015

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

    +158

    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
    $apiid = mysql_real_escape_string(substr($_POST['apiid'], 0, 1024));
    $logine = mysql_real_escape_string(substr($_POST['login'], 0, 1024));
    $koef = mysql_real_escape_string(substr($_POST['koefjet'], 0, 1024));
    $balans = mysql_real_escape_string(substr($_POST['balansjet'], 0, 1024));
    $balansz = mysql_real_escape_string(substr($_POST['balanszjet'], 0, 1024));
    $trafbalans = mysql_real_escape_string(substr($_POST['trafbalansjet'], 0, 1024));
    $krbalans = mysql_real_escape_string(substr($_POST['krbalansjet'], 0, 1024));
    $idget = mysql_real_escape_string(substr($_POST['idjet'], 0, 1024));
    $vuz = mysql_real_escape_string(substr($_POST['v'], 0, 1024));
    $percent = mysql_real_escape_string(substr($_POST['percent'], 0, 1024));
    $maxinv = mysql_real_escape_string(substr($_POST['maxinv'], 0, 1024));
    $r = mysql_real_escape_string(substr($_POST['r'], 0, 1024));
    $fio = mysql_real_escape_string(substr($_POST['fio'], 0, 1024));
    $pass = mysql_real_escape_string(substr($_POST['pass'], 0, 1024));
    $obnom = mysql_real_escape_string(substr($_POST['obnom'], 0, 1024));
    $dkot = mysql_real_escape_string(substr($_POST['dkot'], 0, 1024));
    $email = mysql_real_escape_string(substr($_POST['email'], 0, 1024));
    $ppr = mysql_real_escape_string(substr($_POST['ppr'], 0, 1024));
    $procent = mysql_real_escape_string(substr($_POST['procent'], 0, 1024));
    $unikjet = mysql_real_escape_string(substr($_POST['unikjet'], 0, 1024));

    вот так кто-то получал данные формы

    podvzbzdnul, 05 Апреля 2015

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    <?
      include 'const.php';
      PrintUP("404");
      Echo "<img src='https://lh4.googleusercontent.com/-WnF8tpKQA20/AAAAAAAAAAI/AAAAAAAAEEE/IDe9WUshb8c/s120-c/photo.jpg'>Страница не найдена. =(";
      PrintDOWN();
    ?>

    Не спрашивайте, что делают функции PrintUP() и PrintDOWN(). Первая - 600 строк пхп кода со вставками вида echo ' function() { js-код } ' ; , вторая - 140 строк с очень странными манипуляциями с файлами "базы данных".

    Arris, 26 Марта 2015

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

    +158

    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
    <?php
    //ключ для xxtea
                    $sekret = mt_rand(1,99999999999999);
            
    
    //фальшыфка для get :D пускай тру хакеры помучаются пару недель :D
    
                    $sol = mt_rand (1, 9999999);
                    $iid = mt_rand (1, 900);
                    $iid = md5($sol.$iid.sha1($sekret.$iid).md5($sol.$iid));
                    $dan = base64_encode($iid);
                    $dan = md5($sol.$iid.$dan.sha1($sekret.$iid.$dan).md5($sekret.$iid.$dan));
    //шифровка ключа который делает розшыфровку :D знаю что  так надёжние :D :D
    
                    $pi = mt_rand (1, 5);
                    $delitil = mt_rand (1, 10);            
                    $mnogitel = mt_rand (1, 15);
                    $dodan = mt_rand (1, 20);
                    $mn = mt_rand (1, 25);
                    $mn1 = mt_rand (1, 50);
                    $procent = mt_rand (1, 5);
    
                    $procent= $sekret / $procent;
                    $sekret = $sekret * $mn / $pi;         
                    $pq = $sekret / $delitil;
                    $pw = $pq /$procent;
                    $output = $pw * $mnogitel ;
                    $otv = $output + $dodan * $mn1;
    //розшыфровка ключа
    $otv = $output / $mn1 - $dodan;
    $sekret =$output * $procent * $delitil / $mnogitel /$mn * $pi;

    https://toster.ru/q/204286

    burik666, 20 Марта 2015

    Комментарии (34)
  9. JavaScript / Говнокод #17797

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $('#Leasing_payment_sum').keyup(function(){
        if($(this).val()/$(this).val()){
            var result = $(this).val()*1+$(this).val()*0.18;
            $('#Leasing_payment_sum_with_nds').val(result.toFixed(2));
        }
    });

    Удивляет проверка...

    creepy-code, 16 Марта 2015

    Комментарии (5)
  10. JavaScript / Говнокод #17793

    +158

    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
    eps=0.001;
    
    s1=new Source(1000,0.17);
    mx=new Mixer(1000);
    mb=new Mem(0.15,0.95);
    sp=new Splitter(0.80);
    s2=new Sink();
    s3=new Sink();
    
    mx.in1=s1.out1;
    mx.in2=sp.out2;
    mb.in1=mx.out1;
    sp.in1=mb.out2;
    s3.in1=sp.out1;
    s2.in1=mb.out1;
    
    for (i=0;i<50;i++){
        mx.calc();
        mb.calc();
        sp.calc();
    }
    
    function Stream(v,c){
        this.v=v||null;
        this.c=c||null;
        this.selfCheck=false;
        this.Show=function(){//how to add default values?
            return "volume="+this.v+",conc="+this.c+",selfCheck:"+this.selfCheck+"; ";
        }
    }
    
    function Source(v,c){
        this.out1=new Stream(v,c);
        this.calc=function(){};
    }
    function Sink(){
        this.in1=null;
        this.calc=function(){};
    }
    
    function Mixer(fixedV){
        this.fv=fixedV;
        this.in1=null;
        this.in2=null;
        this.out1=new Stream();
        this.calc=function(){
            this.out1.v=this.fv;//||this.in1.v+this.in2.v;
            this.in2.v=this.in2.v||0;
            this.in2.c=this.in2.c||0;
            this.in1.v=this.out1.v-this.in2.v;
            this.out1.c =(this.in1.v*this.in1.c+this.in2.v*this.in2.c)/this.out1.v;
            this.out1.selfCheck=Math.abs
            ((this.in1.v*this.in1.c+this.in2.v*this.in2.c)-(this.out1.v*this.out1.c))<eps;
        }
    }
    
    function Splitter(kS){
        this.in1=null;
        this.ks=kS||0.05;
        this.out1=new Stream();
        this.out2=new Stream();
        this.calc=function(){
            this.out1.v=this.in1.v*(1-this.ks);
            this.out2.v=this.in1.v*(this.ks);
            this.out1.c=this.in1.c;
            this.out2.c=this.in1.c;
        }
    
    }
    
    function Mem(kV,kC) {
        this.kv = kV||0.15;
        this.kc = kC||0.95;
        this.in1 = null;
        this.out1 = new Stream();
        this.out2 = new Stream();
        this.calc = function () {
            this.out1.v = this.in1.v * this.kv;
            this.out1.c = this.in1.c * (1 - this.kc);
            this.out2.v = this.in1.v * (1 - this.kv);
            this.out2.c = (this.in1.v * this.in1.c - this.out1.v * this.out1.c) / this.out2.v;
            this.out1.selfCheck = this.out2.selfCheck = Math.abs
            (this.in1.v * this.in1.c - (this.out1.v * this.out1.c + this.out2.v * this.out2.c)) < eps;
    
        }
    }

    xtfkpi, 16 Марта 2015

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

    +158

    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
    <?PHP
    	
    	# Регистрация
    
    	if(isset($_POST["login"])){
    	
    	if(isset($_SESSION["captcha"]) AND strtolower($_SESSION["captcha"]) == strtolower($_POST["captcha"])){
    	unset($_SESSION["captcha"]);
    
    	$login = $func->IsLogin($_POST["login"]);
    	$pass = $func->IsPassword($_POST["pass"]);
    	$rules = isset($_POST["rules"]) ? true : false;
    	$time = time();
    	$ip = $func->UserIP;
    	$UserIP = $_SERVER['REMOTE_ADDR'];
    	
    	$email = $func->IsMail($_POST["email"]);
    	$referer_id = (isset($_COOKIE["i"]) AND intval($_COOKIE["i"]) > 0 AND intval($_COOKIE["i"]) < 1000000) ? intval($_COOKIE["i"]) : 1;
    	$referer_name = "";
    	if($referer_id != 1){
    		$db->Query("SELECT user FROM db_users_a WHERE id = '$referer_id' LIMIT 1");
    		if($db->NumRows() > 0){$referer_name = $db->FetchRow();}
    		else{ $referer_id = 1; $referer_name = "wolframavtor"; }
    	}else{ $referer_id = 1; $referer_name = "wolframavtor"; }
    	
    		if($rules){
    
    			if($email !== false){
    		
    			if($login !== false){
    			
    				if($pass !== false){
    			
    					if($pass == $_POST["repass"]){
    						
    						$db->Query("SELECT COUNT(*) FROM db_users_a WHERE user = '$login'");
    						if($db->FetchRow() == 0){
    						
    						# Регаем пользователя
    						$db->Query("INSERT INTO db_users_a (user, email, pass, referer, referer_id, date_reg, ip) 
    						VALUES ('$login','{$email}','$pass','$referer_name','$referer_id','$time',INET_ATON('$ip'))");
    						
    						$lid = $db->LastInsert();
    						
    						$db->Query("INSERT INTO db_users_b (id, user, a_t, last_sbor) VALUES ('$lid','$login','1', '".time()."')");
    						
    						# Вставляем статистику
    						$db->Query("UPDATE db_stats SET all_users = all_users +1 WHERE id = '1'");
    						
    						echo "<center><b><font color = 'green'>Вы успешно зарегистрировались. Используйте форму слева для входа в аккаунт</font></b></center><BR />";
    						?></div>
    						<div class="clr"></div>	
    						<?PHP
    						return;
    						}else echo "<center><b><font color = 'red'>Указанный логин уже используется</font></b></center><BR />";
    						
    					}else echo "<center><b><font color = 'red'>Пароль и повтор пароля не совпадают</font></b></center><BR />";
    			
    				}else echo "<center><b><font color = 'red'>Пароль заполнен неверно</font></b></center><BR />";
    			
    			}else echo "<center><b><font color = 'red'>Логин заполнен неверно</font></b></center><BR />";
    
    		}else echo "<center><font color = 'red'><b>Email имеет неверный формат</b></font></center>";
    
    		}else echo "<center><b><font color = 'red'>Вы не подтвердили правила</font></b></center><BR />";
    	
    		}else echo "<center><font color = 'red'><b>Символы с картинки введены неверно</b></font></center>";
    
    	}
    	
    	
    ?>

    ШЕДЕВРАЛЬНО!

    proweber1, 09 Марта 2015

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