1. SQL / Говнокод #3144

    −150

    1. 1
    2. 2
    3. 3
    4. 4
    SELECT s.id, ( SELECT russianName FROM table2 WHERE countryId=s.region1 ) AS name1,
    ( SELECT russianName FROM table2 WHERE countryId=s.region2 ) AS name2,
    ( SELECT russianName FROM table2 WHERE countryId=s.region3 ) AS name3
    FROM table1 s LEFT JOIN table2 c WHERE s.countryId = xxx

    так мы пытаемся джойнить

    fih, 01 Мая 2010

    Комментарии (32)
  2. Pascal / Говнокод #3143

    +102

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    // тут обычный паскалевский код...
    if x > y then asm // если икс больше игрека
      mov eax, x  // то меняем их значения местами
      mov edx, y
      mov x, edx
      mov y, eax
    end;

    Как поменять значения двух целочисленных переменных, не заводя третью? Года 3 назад я делал примерно так.

    TarasB, 01 Мая 2010

    Комментарии (83)
  3. VisualBasic / Говнокод #3142

    −114

    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
    Public Function Cost(ByVal Vip1 As Boolean, ByVal Dat1 As Date, ByVal Kol1 As Integer, ByVal Cost1 As Decimal) As Decimal
    
            If Vip1 Then
                Return Bas(Cost1, Kol1) * 0.9 + IIf(Cost1 * Kol1 < 50, 50, Bas(Cost1, Kol1) * 0.11)
            Else
                Dim Sk1 As Decimal
                If Leto(Dat1) Then
                    Sk1 = IIf(Bas(Cost1, Kol1) < 1000, 2, 3)
                Else
                    Sk1 = IIf(Bas(Cost1, Kol1) < 1100, 3, 0)
                End If
                Dim Sk2 As Decimal = IIf(Kol1 > 500, 5, 0)
                Dim Sk3 As Decimal
                If Leto(Dat1) Then
                    Sk3 = IIf(Bas(Cost1, Kol1) < 100, 100, Bas(Cost1, Kol1) * 0.1)
                Else
                    Sk3 = IIf(Bas(Cost1, Kol1) < 110, 110, Bas(Cost1, Kol1) * 0.11)
                End If
                Return (Bas(Cost1, Kol1) - Bas(Cost1, Kol1) * Sk1 * 100 - Bas(Cost1, Kol1) * Sk2 * 100 + Sk3)
            End If
        End Function

    Стандартный ынтырпрайз-говнокод, но изюминка, собсно, не в нём, а в нём:

    http://www.sql.ru/forum/actualthread.aspx?bid=9&tid=467673&hl=

    2striker. теперь предпросмотр показывает всегда не php, а си. Спасибо за фикс.

    cfdev, 01 Мая 2010

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

    +169

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function focusOut(id) {
    	var e = document.getElementById(id);
    	i = document.createElement('input');
    	i.type = 'radio';
    	i.name = e.name;
    	i.style.display = 'none';
    	document.body.appendChild(i);
    	i.click();
    }

    Снимаем выделение с радио-кнопки.

    Infamous, 01 Мая 2010

    Комментарии (34)
  5. Си / Говнокод #3140

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    memset( fc->key, 0, KEY_LEN+1);
    memset( fc->value, 0, VALUE_LEN+1);
    
    strncpy(fc->key, key, strlen( key) + 1);
    strncpy(fc->value, value,strlen( value) + 1);

    совершенное непонимание работы ф-ии strncpy

    benderlog, 30 Апреля 2010

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

    +89

    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
    void __fastcall TForm1::FormPaint(TObject *Sender)
    {
      for(int i=0;i<2;i++)
      {
        if(!White[i].Moves)
        {
          int j=0;
          for(int k=0;k<i;k++)
          {
            if(White[k].Position == White[i].Position)
            {
              j++;
            }
          }
          Image1->Canvas->MoveTo(Points[White[i].Position-1].X-20,Points[White[i].Position-1].Y - 30*j);
          Image1->Canvas->LineTo(Points[White[i].Position-1].X+20,Points[White[i].Position-1].Y - 30*j);
        }
      }
      //Image1->Canvas->LineTo(200,200);
    }

    Этот обработчик грузит проц. на 50 процентов и таймер не работает из-за него.
    Писал мой знакомый, который не любит продукты от борланда.
    В чем дерьмо? Думаю видно невооруженным глазом.

    fenryr, 30 Апреля 2010

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

    +160

    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
    if(empty($name) or empty($text) or !preg_match("/[a-zа-я]/i",$name) or !preg_match("/[a-zа-я]/i",$text))
      {
      echo "<font color=\"#f00000\">";
    
        if(empty($name) or !preg_match("/[a-zа-я]/i",$name))
        {
          if(empty($name)) echo "" . $lang['10'] . "<br />";
    
            else {       echo "" . $lang['11'] . "<br />";}
    
        }
    
    
        if(empty($text) or !preg_match("/[a-zа-я]/i",$text) )
          if(empty($text)) echo "" . $lang['12'] . "<br />";
          else {
               echo "" . $lang['13'] . "<br />";
               }
      echo "</font><br /><a href='index.php?act=add'>" . $lang['14'] . "</a><br />";
    
      }
    
      else
      {
    $text=stripslashes(htmlspecialchars($text, ENT_QUOTES));
    $new_date=stripslashes(htmlspecialchars($new_date, ENT_QUOTES));
    $name=stripslashes(htmlspecialchars($name, ENT_QUOTES));
    
      $sms="$name:|:$new_date:|:$text
    ";
    $sms=antimat($sms);
    
      $fp=@fopen($file,"a+");
      @fwrite($fp,$sms);
      fclose($fp);
    
    
    
    if(@fwrite) echo "" . $lang['15'] . " <a href=\"index.php\">" . $lang['16'] . "</a>.<br />";
    else { echo "" . $lang['32'] . ""; }
    }

    )))

    lugaro, 30 Апреля 2010

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

    +121

    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
    [SecuritySafeCritical]
    public ObjectHandle CreateInstance(string assemblyName, string typeName)
    {
        if (this == null) // WTF?
        {
            throw new NullReferenceException();
        }
        if (assemblyName == null)
        {
            throw new ArgumentNullException("assemblyName");
        }
        return Activator.CreateInstance(assemblyName, typeName);
    }

    mscorlib 4.0
    System.AppDomain

    alexeykuptsov, 30 Апреля 2010

    Комментарии (11)
  9. Си / Говнокод #3136

    +135

    1. 1
    while( (*(curr_pos++) != 0x0a) && ((UINT)curr_pos - (UINT)buffer < (UINT)length) );

    Ищем новую строку

    dokonvog, 30 Апреля 2010

    Комментарии (22)
  10. Java / Говнокод #3135

    +75

    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
    private String getIdString() {
            String answer = Integer.toHexString(id.intValue());
            switch (answer.length()) {
            case 0:
                answer = "00000000";
                break;
            case 1:
                answer = "0000000" + answer;
                break;
            case 2:
                answer = "000000" + answer;
                break;
            case 3:
                answer = "00000" + answer;
                break;
            case 4:
                answer = "0000" + answer;
                break;
            case 5:
                answer = "000" + answer;
                break;
            case 6:
                answer = "00" + answer;
                break;
            case 7:
                answer = "0" + answer;
                break;
            }
            return answer;
        }

    JBoss Netty org.jboss.netty.channel.AbstractChannel

    yvu, 30 Апреля 2010

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