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

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

    +162.8

    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
    <?php 
       function db_connect($host, $user, $pass, $db) {
           global $glink;
           $glink = mysql_connect($host, $user, $pass) or db_give_error(3, '', db_error($glink));
            mysql_select_db($db, $glink) or db_give_error(4, '', db_error($glink));
    		mysql_query("SET CHARSET cp1251",$glink);
           return $glink;
       }
       
       function db_query($sql, $log = 0) {
           global $glink;
           $res = mysql_query($sql, $glink) or db_give_error(5, $sql, db_error($glink));
           return $res;
       }
                
       function db_fetch_row($res) {
           $row = empty($res) ? false : mysql_fetch_row($res);
           return $row;
       }
       
       function db_num_rows($res, $stmt = '') {
           $rows = mysql_num_rows($res); 
           if (null === $rows) db_give_error(6, '', db_error($glink));
           return $rows;
       }
      
       function db_num_fields($res, $stmt = '') {
           $fields = empty($res) ? false : mysql_num_fields($res);
           if (null === $fields) db_give_error(7, '', db_error($glink));
           return $fields;
       }
        
       function db_field_name($res, $fld) {
           $name = (empty($res) or !isset($fld)) ? false : mysql_field_name($res, $fld);
           if (false === $name) db_give_error(8, '', db_error($glink));
           return $name;
       }
       
       function db_affected_rows($res) {
           global $glink;
           $rows = mysql_affected_rows($glink); 
           if (null === $rows) db_give_error(9, '', db_error($glink));
           return $rows;
       }
    
       function db_insert_id($id = 0) {
           $id = mysql_insert_id();
           return ($id) ? $id : 1;
       }
       
       function db_next_id($table, $field, $seqname = 'seq') {
           return 0;
       }
       
       function db_errno($res) {
           return mysql_errno($res);
       }
       
       function db_error($res) {
           return mysql_error();
       }
       
       function db_free_result($res) {
           $res = mysql_free_result($res);
           return $res;
       }
    ?>

    Все из того же проекта (http://govnokod.ru/2929). авторам видимо надоело писать mysql_ и они решили сделать свой аналог db_. При чем смысла от этого полный NULL. Говнокод, он и в Африке говнокод

    MoLe-X, 05 Апреля 2010

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

    +163.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
    if($id>542)
           {        
             echo '<img Name="altimg" src="'.$foto.'" border=0>';
           }
           else
           {
           	 $size = getimagesize ($foto);
            if($size['0']>=500 ? $w=500:$w=$size['0']);
            if($size['1']>=500 ? $h=500:$h=$size['1']);
            
            echo '<img Name="altimg" src="'.$foto.'" width="'.$w.'" height="'.$h.'" border=0>';
           }

    вот что значит запускать бета верси говноскрипта в действие. Не продумав изначально что не плохо бы изменять размеры изображения при заливке пришлось вот так говнокодить.

    GoodTalkBot, 26 Марта 2010

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

    +55.4

    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
    #include <math.h>
    #include <assert.h>
    #include "vector10d.h"
     
    float vcompare_epsilon10d = 0.0005f;
     
    ml inlined float v10d_getElement(vec10d *v, int index)
    {
        assert( v != 0);
        assert( index >= 0 );
        assert( index <  3 );
        return (* ((&((v)->x)) +  (index) ));
    }
    ml inlined bool v10d_isValid(const vec10d *v)
    {
        if(v == 0) return g_false;
        if((v->x * v->x) < 0.0f)return g_false;
        if((v->y * v->y) < 0.0f)return g_false;
        if((v->z * v->z) < 0.0f)return g_false;
        if((v->w * v->w) < 0.0f)return g_false;
        if((v->m * v->m) < 0.0f)return g_false;
        if((v->n * v->n) < 0.0f)return g_false;
        if((v->o * v->o) < 0.0f)return g_false;
        if((v->p * v->p) < 0.0f)return g_false;
        if((v->r * v->r) < 0.0f)return g_false;
        if((v->s * v->s) < 0.0f)return g_false;
        return g_true;
    }
    ml inlined void v10d_set(vec10d *v, float x, float y, float z, float w, float m,
               float n, float o, float p, float r, float s)
    {
        assert(v = 0);
        v->x=x;
        v->y=y;
        v->z=z;
        v->w=w;
        v->m=m;
        v->n=n;
        v->o=o;
        v->p=p;
        v->r=r;
        v->s=s;
        assert( v10d_isValid(v) != g_false );
    }
    ml inlined void v10d_get(const vec10d *v, float *x, float *y, float *z, float *w,
         float *m, float *n, float *o, float *p, float *r, float *s)
    {
        assert ( v != 0 );
        assert ( x != 0 );
        assert ( y != 0 );
        assert ( z != 0 );
        assert ( w != 0 );
        assert ( m != 0 );
        assert ( n != 0 );
        assert ( o != 0 );
        assert ( p != 0 );
        assert ( r != 0 );
        assert ( s != 0 );
        assert( v10d_isValid(v) != g_false );
     
        *x = v->x;
        *y = v->y;
        *z = v->z;
        *w = v->w;
        *m = v->m;
        *n = v->n;
        *o = v->o;
        *p = v->p;
        *r = v->r;
        *s = v->s;
    }

    Сие чудо нарыл на просторах интернетов. Для ценителей весь исходник http://pastebin.org/114060 .. Очевидно чуваки писали очередной Crysis :)

    Valor, 16 Марта 2010

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

    +62.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    #define DOIT(why, doit) !(why) || ((doit), (why))
    ...
    STDMETHODIMP CSimpleCtrl::SetObjectRects(LPCRECT prcPos,LPCRECT prcClip)
    {
        DOIT(prcPos, ATLTRACE(_T("t: %d | l: %d | b: %d | r: %d"),
            prcPos->top, prcPos->left, prcPos->bottom, prcPos->right));
    
        return IOleInPlaceObject_SetObjectRects(prcPos, prcClip);
    }

    gg_, 11 Марта 2010

    Комментарии (23)
  6. Java / Говнокод #2760

    +72.6

    1. 1
    2. 2
    3. 3
    4. 4
    Object[] o = new Object[16];
    for (int i = 0; i < 20; i++) {
        o[i] = "";
    }

    Korwin, 11 Марта 2010

    Комментарии (23)
  7. JavaScript / Говнокод #2707

    +159.8

    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
    function check_date() {
    	var	message = "Дата невалидна.";
    		days = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    
    	var str = $('#registration-form [name="birthday"]').val();
    
    	var m = str.match(/(\d*)\.(\d*)\.(\d*)(.*)/);
    
    	if (!m ||
    		!m[1] ||
    		!m[2] ||
    		!m[3] ||
    		m[4] ||
    		parseInt(m[2], 10) < 1 ||
    		parseInt(m[2], 10) > 12 ||
    		parseInt(m[1], 10) < 1 ||
    		parseInt(m[1], 10) > days[parseInt(m[2], 10)-1] ||
    		parseInt(m[3], 10) < 1920 ||
    		parseInt(m[3], 10) > 2000 ) {
    		tooltip($('#registration-form [name="birthday"]').get(0), message);
    	} else {
    		removett($('#registration-form [name="birthday"]').get(0));
    	}
    }

    Не очень говно, но вполне себе код.

    ixth, 03 Марта 2010

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

    +966.3

    1. 1
    2. 2
    int factor = (chbFactor.Checked) ? 1 : 0; // bool to int
    factor = (factor * 2) - 1; // -1 or +1

    Вторая строчка превращает 0 в -1 а единичку не трогает

    Vidmak, 24 Февраля 2010

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

    +130.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
    def TryToFix() : void 
    {
    def  RozoviySlon()  : bool
    {
       System.Diagnostics.Process.Start("http://rsdn.ru/Users/73.aspx");
       if("solution"=="Весёлый слоник не поднимает настроение ?")
              false
      else
             true
    }
    
    unless (  (if ( RozoviySlon() ) "Розовый слон"
    else "Всё хорошо :D") == "Всё хорошо :D" )
         while( RozoviySlon() )
         MessageBox.Show("ААААААААААААААААААА !!!");
    }
    
    try
    {
      Application.Run(nCdy.nForm());
    }
    catch
    {
      | e is Exception => TryToFix();
    }

    Весёлый слоник не поднимает настроение ?

    Nemerle, 05 Февраля 2010

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

    +92.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    string* newstr()
    {
        string* str;
        return memset(str=malloc(sizeof(string)), 0, str?sizeof(string):0);
    }

    GovnocoderJr, 23 Января 2010

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

    +164

    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
    <?
    if( !defined("ADMIN") ) die("Access denied.");
    
    // Получение новых сообщений
    mysql_query('SET NAMES cp1251'); // Чертовы костыли!
    if($messages_count_new>0) {
        $sql = "SELECT * FROM " .PREFIX. "_messages WHERE to_uid = $manager_id AND is_read = 0";
        $result = mysql_query($sql);
        $messages_new = array();
        while ($row = mysql_fetch_assoc($result)) {
            $messages_new[] = $row;
        }    
    }
    // Получение прочитанных сообщений
    $sql = "SELECT * FROM " .PREFIX. "_messages WHERE to_uid = $manager_id AND is_read = 1";
    $result = mysql_query($sql);
    $messages_read = array();
    while ($row = mysql_fetch_assoc($result)) {
        $messages_read[] = $row;
    }
    
    $OUT .= '
    <table>
    <tr><td><h1>Внутренняя почта</h1></td></tr>';
    if(count($messages_new) > 0 OR count($messages_read) > 0):       
        if(count($messages_new) > 0):
            $OUT .= '<tr><td><h2>У вас '.count($messages_new).' новых сообщений</h2></td></tr>        
            <tr><tr>
            <table class="messages_list" width="100%">                  
                <tr><th>Дата</th><th>Тема</th></tr>';
                foreach($messages_new as $key=>$item):
                    $OUT .= '<tr>
                        <td class="date" width=20%">'.date('Y-m-d H:i', $item['created_date']).'</td>
                        <td class="subject"><a href="index.php?page=readmessage&id='.$item['id'].'">'.htmlspecialchars($item['subject']).'</a></td>
                    </tr>';
                endforeach;
            $OUT .= '</td></tr></table>';          
            
        endif;
        if(count($messages_read) > 0):
            $OUT .= '<tr><td><h2>У вас '.count($messages_new).' прочитанных сообщений</h2></td></tr>
            <tr><tr>
            <table class="messages_list" width="100%">                  
                <tr><th>Дата</th><th>Тема</th></tr>';
                foreach($messages_read as $key=>$item):
                $OUT .= '<tr>
                        <td class="date" width=20%">'.date('Y-m-d H:i', $item['created_date']).'</td>
                        <td class="subject"><a href="index.php?page=readmessage&id='.$item['id'].'">'.htmlspecialchars($item['subject']).'</a></td>
                    </tr>';
                endforeach;
            $OUT .= '</td></tr></table>';        
                  
        endif;
    else:
        $OUT .= '<tr><td>У вас нет сообщений</tr></td></table>';
    endif;

    :((((

    azzz, 14 Января 2010

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