1. C# / Говнокод #9076

    +127

    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
    string res = "";
                try
                {
                    if (org_id == NewId.ToString())
                    {
                        string query = "delete from ARMVZ_CONFIG where org_id = " + org_id;
                         OdbcCommand cmd = new OdbcCommand(query, getConnect());
                        cmd.ExecuteNonQuery();
                        cmd.CommandText = "delete from organisations where id = " + org_id;
                         cmd.ExecuteNonQuery();
                        cmd.CommandText = "delete from services where orgid = " + org_id;
                        cmd.ExecuteNonQuery();
                        NewId = 0;
                         res = "";
                    }
                    else
                    {
                        try
                        {
                            string query = "select * from tmp_organisations where id = " + org_id;
                             OdbcCommand cmd = new OdbcCommand(query, getConnect());
                            DataTable dt = new DataTable();
                            dt.Load(cmd.ExecuteReader());
                            if (dt.Rows.Count > 0)
                             {
                                query = "update organisations set ";
                                foreach (DataColumn col in dt.Columns)
                                {
                                    if (col.ColumnName != "id")
                                     {
                                        query = query + col.ColumnName +
                                                                 " = (select " + col.ColumnName +
                                                                    @" from tmp_organisations where tmp_organisations.id = " + org_id + " ),";
                                     }
                                }
                                query = query.Remove(query.Length - 1);
                                query = query + " where id = " + org_id;
                                 cmd.CommandText = query;
                                dt.Dispose();
                                cmd.ExecuteNonQuery();
    
                            }
                        }
                        catch
                         {
                            //
                        }
                        try
                        {
                            string query = "select * from tmp_armvz_config where org_id = " + org_id;
                             OdbcCommand cmd = new OdbcCommand(query, getConnect());
                            DataTable dt = new DataTable();
                            dt.Load(cmd.ExecuteReader());
                            if (dt.Rows.Count > 0)
                             {
                                query = "update armvz_config set ";
                                foreach (DataColumn col in dt.Columns)
                                {
                                    if (col.ColumnName != "org_id")
                                     {
                                        query = query + col.ColumnName +
                                                                 " = (select " + col.ColumnName +
                                                                    @" from tmp_armvz_config where tmp_armvz_config.org_id = " + org_id + " ),";
                                     }
                                }
                                query = query.Remove(query.Length - 1);
                                query = query + " where org_id = " + org_id;
                                 cmd.CommandText = query;
                                dt.Dispose();
                                cmd.ExecuteNonQuery();
    
                            }
                        }
                        catch
                         {
                            //
                        }

    метод называется "rollback_transaction". весь метод просто не влез

    bercerker, 11 Января 2012

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

    +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
    function recoveryPassword( $data )
    {
    	$value = implode( '', $data );
    	$key = implode( '', array_keys( $data ) );
    
    	$query = '
    		SELECT
    			u.user_id AS `id`,
    			u.login,
    			u.salt,
    			u.mail,
    			u.status
    		FROM
    			users AS `u`
    		WHERE
    			u.'.$key.' = "'.$value.'"
    		LIMIT 1;';
    
    	if( !list($result) = $this->db->get($query) )
    	{
    		...
    }

    Копаясь в старом студийном коде наткнулся. Видимо, предполагалось, что в качестве $data будет передан массив вида array( 'field' => 'value' ) c 1 элементом.

    faiwer, 11 Января 2012

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

    +1000

    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
    int count_object = 64;
    int colum = 8;
       for(int i = 0; i < count_object; i++){
            mObject *dot = new mObject(this);
            vec.push_back(dot);
            scene->addItem(dot);
        }
    
        int t = 1;
    
        for(int j = 0; j < vec.size()-1; j++){
            if(t >= colum){
               scene->addItem(new mConnect(vec[j+1],vec[j+2]));
               t = 0;
            }else{
               scene->addItem(new mConnect(vec[j],vec[j+1]));
            }
            ++t;
        }
    
        for(int g = 0; g < colum; g++){
            int u = 0;
            for(int y = 0; y < vec.size()/9; y++){
                scene->addItem(new mConnect(vec[g+u],vec[u+colum+g]));
                u = u + colum;
                }
            }

    особенно порвало "for(int y = 0; y < vec.size()/9; y++){"

    Mindless, 10 Января 2012

    Комментарии (15)
  4. Си / Говнокод #9073

    +136

    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
    static BOOL CALLBACK callbackEspecial(
      LPSTR aModuleName,
      DWORD aModuleBase,
      ULONG aModuleSize,
      PVOID aUserContext)
    {
        BOOL retval = TRUE;
        DWORD addr = *(DWORD*)aUserContext;
    
        /*
         * You'll want to control this if we are running on an
         *  architecture where the addresses go the other direction.
         * Not sure this is even a realistic consideration.
         */
        const BOOL addressIncreases = TRUE;
    
        /*
         * If it falls inside the known range, load the symbols.
         */
        if (addressIncreases
           ? (addr >= aModuleBase && addr <= (aModuleBase + aModuleSize))
           : (addr <= aModuleBase && addr >= (aModuleBase - aModuleSize))
            ) {
            retval = _SymLoadModule(GetCurrentProcess(), NULL, aModuleName, NULL, aModuleBase, aModuleSize);
        }
    
        return retval;
    }

    аццкая адресация
    http://mozilla-thunderbird.sourcearchive.com/documentation/1.5.0.10-0ubuntu3/nsStackFrameWin_8cpp-source.html

    63F45EF45RB65R6VR, 10 Января 2012

    Комментарии (12)
  5. Pascal / Говнокод #9072

    +81

    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
    { ... }
      writeln('vvedite indexi "X" i "=" 1-ogo uravneniay');
      writeln('x1');
      readln(x11);
      writeln('x2');
      readln(x12);
      writeln('x3');
      readln(x13);
      writeln('x4');
      readln(x14);
      writeln('=');
      readln(x15);
      writeln('vvedite indexi "X" i "=" 2-ogo uravneniay');
      writeln('x1');
      readln(x21);
      writeln('x2');
      readln(x22);
      writeln('x3');
      readln(x23);
      writeln('x4');
      readln(x24);
      writeln('=');
      readln(x25);
      writeln('vvedite indexi "X" i "=" 3-ogo uravneniay');
      writeln('x1');
      readln(x31);
      writeln('x2');
      readln(x32);
      writeln('x3');
      readln(x33);
      writeln('x4');
      readln(x34);
      writeln('=');
      readln(x35);
      writeln('vvedite indexi "X" i "=" 4-ogo uravneniay');
      writeln('x1');
      readln(x41);
      writeln('x2');
      readln(x42);
      writeln('x3');
      readln(x43);
      writeln('x4');
      readln(x44);
      writeln('=');
      readln(x45);
      {веселье - вот зачем это все нужно было))}
      m2[1,1]:=x11;
      m2[1,2]:=x12;
      m2[1,3]:=x13;
      m2[1,4]:=x14;
      m2[2,1]:=x21;
      m2[2,2]:=x22;
      m2[2,3]:=x23;
      m2[2,4]:=x24;
      m2[3,1]:=x31;
      m2[3,2]:=x32;
      m2[3,3]:=x33;
      m2[3,4]:=x34;
      m2[4,1]:=x41;
      m2[4,2]:=x42;
      m2[4,3]:=x43;
      m2[4,4]:=x44;
    { ... }

    Классика ввода матриц. Опять. С киберфорума. http://www.cyberforum.ru/turbo-pascal/thread425906.html#post2374414

    HighPredator, 10 Января 2012

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

    +137

    1. 1
    2. 2
    3. 3
    // ...
    if not Length(username) in [6..24] then
      raise Exception.Create('Длина ника должна находиться в пределах от 6 до 24 символов');

    ну прям как N ∈[6; 24]

    brainworm, 10 Января 2012

    Комментарии (9)
  7. ActionScript / Говнокод #9070

    −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
    /**
     *  @private
     */
    override protected function createChildren():void
    {
    	nameLabel = IUITextField(createInFontContext(UITextField));
    	nameLabel.selectable = false;
    	nameLabel.styleName = this;
    	addChild(DisplayObject(nameLabel));
    
    	super.createChildren();
    
    	if (!nameLabel)
    	{
    		nameLabel = IUITextField(createInFontContext(UITextField));
    		nameLabel.selectable = false;
    		nameLabel.styleName = this;
    		addChild(DisplayObject(nameLabel));
    	}
    }

    Adobe, mx.charts.LegendItem. Недоверчивый, такой, код.

    wvxvw, 10 Января 2012

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

    +147

    1. 1
    echo ob_get_clean();

    tushkancheg, 10 Января 2012

    Комментарии (1)
  9. Pascal / Говнокод #9068

    +105

    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
    program tetris;
    uses
      crt;
    var
      ss,nn,x,y,pus,a,b,c,d,lin,rlin:integer;
      st:array[1..12] of array[1..22] of integer;
    
    procedure k(x,y:integer);
    {ђЁб㥬 Єў а¤а вЁЄ}
    begin
     gotoxy(x*2+27,25-y);
     if ss=0 then write('  ');
     if ss=1 then write('[]');
     if ss=2 then write(chr(177),chr(177));
     if (ss=3) and (st[x,y]>0) then pus:=1;
     if ss=4 then st[x,y]:=1;
     gotoxy(1,1);write(' ');
    end;
    
    procedure fig(x,y,n,s:integer);
    {ђЁб㥬 дЁЈгаг}
    begin
     if s=3 then pus:=0;
     ss:=s; k(x,y);
     if n=1 then begin k(x+1,y);k(x,y-1);k(x+1,y-1) end;
     if n=2 then begin k(x-1,y);k(x+1,y);k(x+2,y) end;
     if n=3 then begin k(x,y+1);k(x,y-1);k(x,y-2) end;
     if n=4 then begin k(x+1,y);k(x-1,y);k(x-1,y+1) end;
     if n=5 then begin k(x,y+1);k(x+1,y+1);k(x,y-1) end;
     if n=6 then begin k(x-1,y);k(x+1,y);k(x+1,y-1) end;
     if n=7 then begin k(x,y+1);k(x,y-1);k(x-1,y-1) end;
     if n=8 then begin k(x-1,y);k(x+1,y);k(x+1,y+1) end;
     if n=9 then begin k(x,y+1);k(x,y-1);k(x+1,y-1) end;
     if n=10 then begin k(x+1,y);k(x-1,y);k(x-1,y-1) end;
     if n=11 then begin k(x,y+1);k(x,y-1);k(x-1,y+1) end;
     if n=12 then begin k(x-1,y);k(x,y-1);k(x+1,y-1) end;
     if n=13 then begin k(x,y+1);k(x-1,y);k(x-1,y-1) end;
     if n=14 then begin k(x+1,y);k(x-1,y-1);k(x,y-1) end;
     if n=15 then begin k(x-1,y);k(x,y-1);k(x-1,y+1) end;
     if n=16 then begin k(x+1,y);k(x-1,y);k(x,y+1) end;
     if n=17 then begin k(x+1,y);k(x,y+1);k(x,y-1) end;
     if n=18 then begin k(x,y-1);k(x-1,y);k(x+1,y) end;
     if n=19 then begin k(x-1,y);k(x,y+1);k(x,y-1) end
    end;
    
    procedure pov;
    {Џ®ў®а®в дЁЈгал}
    begin
     nn:=nn-1;
     if nn=15 then nn:=19;
     if nn=13 then nn:=15;
     if nn=11 then nn:=13;
     if nn=7 then nn:=11;
     if nn=3 then nn:=7;
     if nn=1 then nn:=3;
     if nn=0 then nn:=1;
    end;
    
    procedure clrst;
    {ЋзЁбвЄ  бв Є ­ }
    begin
     for x:=1 to 12 do
      for y:=1 to 22 do
       if (x=1) or (x=12) or (y=1) then st[x,y]:=2 else st[x,y]:=0;
    end;
    
    procedure risvesst;
    {ђЁб®ў вм ўҐбм бв Є ­}
    begin
     for x:=1 to 12 do  for y:=1 to 22 do
       begin
        ss:=st[x,y];
        k(x,y)
       end;
    end;
    
    procedure dvig;
    {„ўЁ¦Ґ­ЁҐ}
    var
     i:integer;key:char;
    begin
     for i:=1 to 10 do
      begin
      delay(d);
      key:=' ';
      if keypressed then key:=readkey;
      if key='i' then
       begin
       fig(x-1,y,nn,3);
       if pus=0 then begin fig(x,y,nn,0); x:=x-1; fig(x,y,nn,1); end;
       end;

    http://sources.ru/pascal/gamestxt/tet.htm

    dos_, 10 Января 2012

    Комментарии (10)
  10. Ruby / Говнокод #9067

    −102

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    / _jquery.haml
    
    - unless Rails.env.development?
      / Require jQuery
      = javascript_include_tag 'http://yandex.st/jquery/1.7.1/jquery.min.js'
      / Require Google's jQuery if Yandex is down
      :javascript
        window.jQuery || document.write('<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js">\x3C/script>')
    / Require local jQuery if Google is down / is development env
    :javascript
      window.jQuery || document.write('<script src="#{asset_path('jquery.js')}">\x3C/script>')

    Отсюда: https://gist.github.com/1543189

    loststy, 10 Января 2012

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