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

    +155

    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
    /**
         * Обновление информации о пользователе
         *
         * @param integer $user_id
         * @param array $data
         * @return Zend_Db_Statement_Pdo
         */
        public function updateProfile($user_id, $data)
        {
            // TODO: сделать человеческую валидацию
            $params = $keys = array();
    
            if ($data['login'] !== NULL) {
                $keys[] = 'u_login = ?';
                $params[] = $data['login'];
            }
    
            if (Zend_Validate::is($data['email'], 'EmailAddress')) {
                $keys[] = 'u_email = ?';
                $params[] = $data['email'];
            }
    
            if ($data['sname'] !== NULL) {
                $keys[] = 'u_sname = ?';
                $params[] = $data['sname'];
            }
    
            if ($data['name'] !== NULL) {
                $keys[] = 'u_name = ?';
                $params[] = $data['name'];
            }
    
            if ($data['fname'] !== NULL) {
                $keys[] = 'u_fname = ?';
                $params[] = $data['fname'];
            }
    
            if ($data['birthdate'] !== NULL) {
                $keys[] = 'u_birthdate = ?';
                $params[] = $data['birthdate'];
            } else {
                $keys[] = 'u_birthdate = NULL';
            }
    
            if ($data['city'] !== NULL) {
                $keys[] = 'u_c_id = ?';
                $params[] = (int) $data['city'];
            }
    
            if ($data['info'] !== NULL) {
                $keys[] = 'u_info = ?';
                $params[] = $data['info'];
            }
    
            if ($data['sign'] !== NULL) {
                $keys[] = 'u_sign = ?';
                $params[] = $data['sign'];
            }
    
            if ($data['sex'] === 'M' OR $data['sex'] === 'F') {
                $keys[] = 'u_sex = ?';
                $params[] = $data['sex'];
            }
    
            if ($data['subscribe'] === 'on' AND ($data['subtype'] === 'T' OR $data['subtype'] === 'H')) {
                $keys[] = 'u_subscribed = ?';
                $params[] = $data['subtype'] === 'T' ? 1 : 2;
            } else {
                $keys[] = 'u_subscribed = ?';
                $params[] = 0;
            }
    
            $sql = 'UPDATE users SET ' . implode(', ', $keys) . ' WHERE u_id = ' . (int) $user_id;
            $query = $this->db->query($sql, $params);
    
            $this->clearUserCache($user_id);
    
            return $query;
        }

    nergal, 26 Августа 2010

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

    +172

    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
    <?
    @session_start();
    
    $fini=rand(0,9);
    
    if($fini==1){
    
    $_SESSION['idi']='ZM55PKL216';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka1.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==2){
    
    $_SESSION['idi']='2K1P6LZ55M';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka2.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==3){
    
    $_SESSION['idi']='LK561MP5Z2';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka3.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==4){
    
    $_SESSION['idi']='65ZP1MLK25';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka4.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==5){
    
    $_SESSION['idi']='552P6LM1ZK';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka5.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==6){
    
    $_SESSION['idi']='ZP2M615LK5';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka6.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==7){
    
    $_SESSION['idi']='KM5P2Z615L';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka7.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==8){
    
    $_SESSION['idi']='2KP5Z16L5M';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka8.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==9){
    
    $_SESSION['idi']='PKM15Z25L6';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka9.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    if($fini==0){
    
    $_SESSION['idi']='6ZP5L25M1K';
    
    echo"<div style='position:absolute; background-image:url(images/proverochnoe%20chislo/proverka10.png); width:112px; height:30; left: 390px; top: 260px;'></div>";}
    
    ?>
    
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    
    <div style="position:absolute; top:-10px; left:25px; width: 340px; height: 49px; z-index:8;"><font size="+2" color="#333399" style="position:absolute; top:236px; left:-5px; width: 284px;">Контрольное значение для ячейки значение:</font>
    
    </div>

    Содержимое файла "kontrolnoe znachenie.php".
    Великий и ужасный "генератор капчи". Особая прелесть в том, что файл начинается с пустой строки, а потом уже идет <?@session_start(). Кто сталкивался с проблемой "Headers are already sent" поймет, поймет также почему автор наивно пытается исправить эту проблему с помощью @.
    Продолжение серии: #4101, #4100.

    SunnyMagadan, 26 Августа 2010

    Комментарии (24)
  3. C# / Говнокод #4105

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // Split the domain in parts
    string[] sParts = sEmailAddress.Split("@".ToCharArray(), 42);
    
    // An e-mail address must, as a minimum, contain 2 parts separated by a @
    if (sParts.Length != 2) 
    {
        throw new InvalidEmailAddressException(sEmailAddress);
    }

    Валидатор email-адреса.

    musuk, 26 Августа 2010

    Комментарии (23)
  4. C++ / Говнокод #4104

    +144

    1. 1
    2. 2
    3. 3
    int main(){
    func(z(c(v(b(n(m(a(s(d(f(g())))))))))));\\и так далее
    }

    Это не совсем оригинал, но смысл тот же. Писал мой знакомый...
    m,z,c... это все функции, которые отдают значения.
    Конечно это лишь прикол, но логика рушится быстро...

    hromjo, 25 Августа 2010

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

    +144

    1. 1
    exit; ?>

    Самая последняя строчка в скрипте.

    7ion, 25 Августа 2010

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

    +150

    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
    <?session_start();
    
    require_once "../Source/connect.php";
    
    require_once "../Models/Comment(class).php"?>
    
    <link rel="stylesheet" href="../Source/style.css" type="text/css" />
    
    <a href="../Forms/Register_form.php">Регистрация</a> <br/><br/>
    
    <form name="login" action="../Controller/Controller.php" method="post">
    
    <input name="login" type="text" value=""> Логин <br/>
    
    <input name="password" type="password" value=""> Пароль <br/>
    
    Введите данные:<br/><br/>
    
    <input name="do" type="submit" value="Войти">
    
    <?session_destroy();?>
    
    </form>
    
    
    
    <?
    
    $comment = new Comm();
    
    	
    
    	$comment->Menu();
    
    	$comment->Coments();
    
    ?>

    Хочется назвать сие творение: "Очень быстрая сессия".
    Это весь код главной страницы простенького сайта-блога. Автор даже не подозревает о существовании тегов <html>, <head> и <body>. Вначале можно было подумать, что он засунул их в один из подключаемых файлов, а нет. Просто не нужны они ему и все.

    SunnyMagadan, 25 Августа 2010

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

    +166

    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
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    <link rel="stylesheet" type="text/css" href="table style.css"/>
    <?
    @session_start();
    
    if(!isset($_SESSION['login']))
    
    { echo '<div id="sulochki"  style="top:80px; position:absolute; left: 678px;"><a href="avtorizaciya.php">Вход</a></div>'; }
    
    
    
    if(isset($_SESSION['login']))
    
    { echo '<div  style="top:85px; position:absolute; left: 678px;">
    
    <form action="obrabotka avtorizaciy.php" method="post"> 
    
    <input  type="submit" name="logout" style="color:#F93; font-size:18px" value="   Выход   "/> </form> </div>'; }
    
    if(isset($_SESSION['login'])) {
    
    $str=strtoupper($_SESSION['niks']); 	
    
    echo'<div style="position:absolute;left:650; top:25; color:#FFF; font-size:21px; z-index:1">Здравствуйте '.$str.'</div>';}
    
    ?>

    Содержание файла с емким названием "vhod_vuchod.php"

    SunnyMagadan, 25 Августа 2010

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $ix=$_POST['danue'];
    
    if(isset($_POST['danue'])){
    
    $reyd="INSERT INTO `NOVOSTI` (`CONNTEKT`) VALUES ('{$ix}')";
    
    $rido=mysql_query($reyd) or die ("no dannuch");
    
    header ('location: index.php');}

    SunnyMagadan, 25 Августа 2010

    Комментарии (16)
  9. Java / Говнокод #4099

    +121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if ((((o-'0')|('7'-o)) >= 0) && (((n-'0')|('3'-n)) >= 0)) {
                        return (n - '0') * 64 + (m - '0') * 8 + (o - '0');
                    }
                    unread();
                    return (n - '0') * 8 + (m - '0');
                }
                unread();
                return (n - '0');

    смайлоговнокод от Chen-Lieh Huang, Alan Liu
    /* @(#)Pattern.java 1.113 07/05/07
    http://kickjava.com/src/java/util/regex/Pattern.java.htm
    окончание серии #3976 #3975 #3940 #3998 #3999 #4007 #4054

    3.14159265, 25 Августа 2010

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

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    #define MIN(i1, i2) (i1 < i2 ? i1 : i2)
    
    int mr_word_compare(const char* r1, int s1, const char* r2, int s2)
    {
        int l1 = strchr(r1, ' ') - r1;
        int l2 = strchr(r2, ' ') - r2;
        return strncmp(r1, r2, MIN(l1, l2));
    }

    пердложенный вариант исправления #4093 (http://govnokod.ru/4093)

    vayerx, 25 Августа 2010

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