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

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

    +162

    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
    <?
    	if ($_GET['view'] == 'login') {
    		$_POST[email2] = htmlspecialchars(stripslashes($_POST[email]));
    		$_POST[pass2]  = htmlspecialchars(stripslashes($_POST[pass]));
    		if($_POST['email'] == $_POST['email2'] && $_POST['pass'] == $_POST['pass2']) {
    			if($_POST['email2'] && $_POST['pass2']) {				
    				$result_310 = mysql_query("SELECT * FROM `gameuser` WHERE `emailx` = '$_POST[email2]'");
    				$zapros_310 = mysql_fetch_array($result_310);
    				if($zapros_310['emailx']) {
    					if($zapros_310['passwordx'] != '' && $zapros_310['passwordx'] == md5($_POST['pass2'])) {
    						$ipd1       = $_SERVER["REMOTE_ADDR"];						
    						$result_105 = mysql_query("SELECT * FROM `ipblock` WHERE `ip` = '$ipd1'");
    						$zapros_105 = mysql_fetch_array($result_105);
    						if($zapros_105['id'] == '' && $zapros_105['ip'] != $ipd1) {
    							setcookie("iduser", $zapros_310['id']);
    							setcookie("emailuser", $zapros_310['emailx']);
    							setcookie ("passuser", $zapros_310['passwordx']);
    							
    							if($_COOKIE['code'])
    								if($_COOKIE['code'] != $zapros_310['id'])
    									mysql_query("INSERT INTO `statistic2` (info, date) VALUES ('".$_COOKIE['code']." change on ".$zapros_310['id']."', now());");
    							setcookie("code", $zapros_310['id'], time() + 2419200);
    							
    							$http_host5 = $_SERVER['HTTP_HOST'];
    							if ($http_host5 == 'dreamdivision.ru') {$http_host5 = "www.dreamdvision.ru";}
    							if ($http_host5 == 'dreamdivision.ru')     {$http_host5 = "www.dreamdivision.ru";}
    							if($zapros_310['id'] != '1') {$result_311 = mysql_query("UPDATE `gameuser` SET `ip` = '".$_SERVER["REMOTE_ADDR"]."', `host` = '$http_host5'  WHERE `id` = '$zapros_310[id]' LIMIT 1");}
    							$result_312 = mysql_query("SELECT * FROM `iploguser` WHERE `id` = '$zapros_310[id]'");
    							$zapros_312 = mysql_fetch_array($result_312);
    							if($zapros_312['ip'] != $ipd1) {
    								$result_313 = mysql_query("INSERT INTO `iploguser` ( `ip` , `id` ) VALUES ( '$ipd1', '$zapros_310[id]' );");
    							}
    							if ($zapros_310['tpcht'] == '0') {
    								$href1 = "updates.php";
    							} else if($zapros_310['tpcht'] == '1'){
    								$href1 = "main.php";
    							}
    							header("Location: $href1"); 
    						} else {
    							$smarty->assign('case', '2');
    							$smarty->assign('message', 'Пароль не верный.');
    							$smarty->display("index.tpl",$user_theme_name,$user_theme_name);
    						}
    					} else {
    						$smarty->assign('case', '2');
    						$smarty->assign('message', 'Пароль не верный.');
    						$smarty->display("index.tpl",$user_theme_name,$user_theme_name);
    					}
    				} else {
    					$smarty->assign('case', '2');
    					$smarty->assign('message', 'E-mail не верный.');
    					$smarty->display("index.tpl",$user_theme_name,$user_theme_name);
    				}
    			} else {
    				$smarty->assign('case', '2');
    				$smarty->assign('message', 'Заполните все поля.');
    				$smarty->display("index.tpl",$user_theme_name,$user_theme_name);
    			}
    		} else {
    			$smarty->assign('case', '2');
    			$smarty->assign('message', 'E-mail и/или Пароль содержат недопустимые символы.');
    			$smarty->display("index.tpl",$user_theme_name,$user_theme_name);
    		}
    	}
    $smarty->assign('case', '3');
    $smarty->display("index.tpl",$user_theme_name,$user_theme_name);

    qbasic, 15 Декабря 2010

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

    +167

    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
    if (!empty($_POST['mail'])) {
    $res=mysql_query("SELECT * FROM `users` WHERE email='".$_POST['mail']."' LIMIT 1");
    if (mysql_num_rows($res) > 0) {
    $row=mysql_fetch_array($res);
    
    $to  = $_POST['mail'] ; 
    $subject = "Восстановление пароля";
    $message = '<html><head><title>Восстановление пароля</title></head><body>
    <p>Процедура восстановления пароля прошла успешно</ p>
    <p>Ваш пароль: <b style="color:#006633"> '.$row['pass'].'</b></p></body></html> '; 
    
    $headers  = "Content-type: text/html; charset=utf8 \r\n"; 
    $headers .= "From: Восстановление пароля <[email protected]>\r\n"; 
    $headers .= "Bcc: [email protected]\r\n"; 
    $send=mail($to, $subject, $message, $headers); 
    if ($send==true) { echo 'Пароль был отправлен на ваш email.';} else { echo 'Попробуйте позже.';}
    }
    else { echo 'Такого пользователя нет в базе.'; }

    Мегасекьюрное восстановление пароля!

    Wivern, 02 Ноября 2010

    Комментарии (72)
  4. Куча / Говнокод #2427

    +80

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Очередное обновление на сайте Говнокод.ру!
    
    Что нового:
    1) отсылка комментариев по Ctrl+Enter
    2) Новый раздел "Сток", в котором будут собраны последнии комментарии
    3) Мы наконец-то починили отсылку почты с сайта!
    4) Из мелочей следует отметить сервис восстановления забытых паролей и автоматическое скрытые заминусованных комментариев
    5) Говнокод.ру еще быстрее и еще стабильнее!

    По всем вопросам, предложениям и баг-репортам обращаться по контактам, указанным на странице "Обратная связь" (ссылка внизу страницы)

    striker, 17 Января 2010

    Комментарии (72)
  5. Perl / Говнокод #55

    −111.4

    1. 1
    #!/usr/blin/perl

    guest, 04 Декабря 2008

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

    +54

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if (!isset($_GET['month'])) {
        ...
    }
    else {	
        if (isset($_POST['submit_fin'])) {
            ...
        }
    }

    guest, 23 Ноября 2008

    Комментарии (72)
  7. Assembler / Говнокод #28011

    +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
    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
    98. 98
    .org 22h
    dw @vbi
    
    .org 80h
    bpos: db 0h 0h
    vector: db 2h 1h
    
    process:
    	push %a
    	push %b
    	mov %a [@bpos] ; {h:x, l:y} ;
    	mov %b [@vector] ; {h:dx, l:dy} ;
    	add %ah %bh
    	add %al %bl
    	cmp %ah 11h
    	jng @.skip_xoverflow_handle
    	cmp %ah 14h
    	jg @.overflow_left
    	mov %ah 11h
    	jmp @.xoverflow_finally
    	.overflow_left:
    		mov %ah 0h
    	.xoverflow_finally:
    		neg %bh
    	.skip_xoverflow_handle:
    	cmp %al 5Ch
    	jng @.skip_yoverflow_handle
    	cmp %al 60h
    	jg @.overflow_up
    	mov %al 5Bh
    	jmp @.yoverflow_finally
    	.overflow_up:
    		mov %al 1h
    	.yoverflow_finally:
    		neg %bl
    	.skip_yoverflow_handle:
    	mov [@bpos] %a
    	mov [@vector] %b
    	pop %b
    	pop %a
    	ret
    	
    cls:
    	push %a
    	push %b
    	mov %a 3A98h
    	
    	.loop:
    		mov [%a + @T1] 0000h
    		sub %a 2h
    		jnz @.loop 
    	pop %b
    	pop %a
    	ret
    
    render:
    	push %a
    	push %b
    	push %c
    
    	mov %a [@bpos]  ; {h:x, l:y} ;
    	mov %b %al
    	mul %b 12h
    	add %b %ah
    	add %b @T1
    	
    	mov %c 8h
    	.loop:
    		movb [%b] FFh
    		add %b 12h
    		dec %c
    		jnz @.loop
    	
    	pop %c
    	pop %b
    	pop %a
    	ret	
    
    start:
    	mov %sp FFFFh
    	outb 20h 1h
    	outb 21h 16h
    	out  22h @T1
    	
    	mov %al 1h
    	int 10h
    	
    	.loop:
    		jmp @.loop
    
    vbi:
    	call @cls
    	call @render
    	call @process
    	ret
    
    .org 1000h
    T1:

    решил пойти по накатанному пути и добавил видеоконтроллер, пока только монохромная битовая карта 144x100, но большего и не надо
    сабж выводит на экран что отпрыгивает от стен, простое умножение компонента вектора на -1

    digitalEugene, 14 Февраля 2022

    Комментарии (71)
  8. JavaScript / Говнокод #27503

    +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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    class C {
        _length: number;
    
        constructor() {
            this._length = 10;
        }
    
        get length() {
            return this._length;
        }
        set length(value: number) {
            this._length = value;
        }
    }
    
    function main() {
        const c = new C();
    
        print(c.length);
        c.length = 20;
        print(c.length);
    
        delete c;
    
        print("done.");
    }

    пока вы тут балаболили я тут наговнокодил "property" или "accessors"

    ASD_77, 07 Июля 2021

    Комментарии (71)
  9. Куча / Говнокод #27276

    +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
    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
    (set-logic UF)
    ; https://smtlib.cs.uiowa.edu/logics.shtml
    ; UF for the extension allowing free sort and function symbols 
    
    (set-option :produce-proofs true)
    
    (declare-sort M_list)
    
    (declare-fun m_node (M_list M_list) M_list)
    
    ; один хер какой порядок, можно переписать (a, b) на (b, a)
    (assert
      (forall ( (a M_list) (b M_list) )
        (=
          (m_node a b)
          (m_node b a)
        )
      )
    )
    
    ; если есть (a (b c)) то можно переписать на (с (a b))
    (assert
      (forall ( (a M_list) (b M_list) (c M_list) )
        (=
          (m_node a (m_node b c) )
          (m_node c (m_node a b) )
        )
      )
    )
    
    ; Можно создавать или удалять повторы, (a a) <=> a
    (assert
      (forall ( (a M_list))
        (=
          (m_node a a)
          a
        )
      )
    )
    
    
    ; Чтоб узнать, выводима ли такая-то хернь
    (declare-fun m_node_select (M_list M_list) Bool)
    
    
    (assert
      (forall ( (a M_list) (b M_list) )
        (m_node_select
          a (m_node a b)
        )
      )
    )
    
    ; проверяем, можно ли сконструировать (a a) из (c ((b d) a))
    (assert
      (not (forall ( (a M_list) (b M_list) (c M_list) (d M_list) )
        (m_node_select
          (m_node a a)
          (m_node c (m_node (m_node b d) a) )
        )
      ))
    )
    
    
    (check-sat)
    (get-proof)

    Вот вам немного гомоикон SMT-солвера. Эта вот хренотень сама доказывает, не то что какой-то там Coq.

    Понятно что по тем вот говноправилам можно чтоб всплыло 'a' и потом его удвоить "(a a) <=> a"
    потом через m_node_select вытащить этот дубликат

    j123123, 01 Марта 2021

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

    +2

    1. 1
    Оффтоп словаря терминов говнокода.

    Для всего, что хотели ответить на комментарий из http://govnokod.ru/26478.
    Поддержим чистоту расы словаря!

    1024--, 11 Марта 2020

    Комментарии (71)
  11. Куча / Говнокод #26373

    0

    1. 1
    Тестовый код для тестирования парсера.

    Не обращайте внимания.

    int i = 5;
    i += ++i + ++i;

    Именно поэтому я против «C++».
    def f():
    try:
    f()
    finally:
    f()
    f()

    Fatal Python error: Cannot recover from stack overflow.
    Current thread 0x00002288 (most recent call first):
    mov     bp, 0cf8h
    lea esi, IOForEEPROM-@7[esi]
    mov edi, 8000384ch
    mov dx, 0cfeh
    cli
    call esi
    mov di, 0058h
    dec edx ; and al,0fh
    mov word ptr (BooleanCalculateCode-@10)[esi], 0f24h
    call esi
    lea ebx, EnableEEPROMToWrite-@10[esi]
    mov eax, 0e5555h
    mov ecx, 0e2aaah
    call ebx
    mov byte ptr [eax], 60h
    push ecx
    loop $

    Какой скилл )))

    gost, 21 Января 2020

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