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

    −62.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if ( strchr ( $_POST["ship$i"], "+") || strchr($_POST["ship$i"], " ") || strchr($_POST["ship$i"], ",") || strchr($_POST["ship$i"], ".") || strchr($_POST["ship$i"], "-") || strchr($_POST["ship$i"], "_") || strchr($_POST["ship$i"], ";") || strchr($_POST["ship$i"], ":") ) { 
    message("You got owned by >>The_Revenge Anticheat Systems<<", "Anticheat");
    }
    if ( !strchr ( $_POST["ship$i"], "+") && !strchr($_POST["ship$i"], " ") && !strchr($_POST["ship$i"], ",") && !strchr($_POST["ship$i"], ".") && !strchr($_POST["ship$i"], "-") && !strchr($_POST["ship$i"], "_") && !strchr($_POST["ship$i"], ";") && !strchr($_POST["ship$i"], ":")) {
    // код
    }

    Немец предложил такое решение для проверки, что в строке ship$i именно положительное целое число и ни что иное.
    В другом месте попадается аналогичный момент, только там после каждого strchr для каждого спецсимвола идет 10 строк одного и того же кода с двумя запросами к БД и выдачей бана юзеру...
    Проект XNova (ogame-like)

    guest, 11 Декабря 2008

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

    −57.3

    1. 1
    2. 2
    3. 3
    $result = doquery("SELECT * FROM {{table}} WHERE username='".$username."';",users,true);
    $username = $result['username'];
    unset($result);

    В одной браузерной стратегии...

    guest, 11 Декабря 2008

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

    −53.9

    1. 1
    2. 2
    3. 3
    $g_db->q("SELECT * FROM {$GLOBAL['db']['pref']}_volumes 
              WHERE `visible` != 0 AND `owner_id`={$duser['u_id']} 
              AND (`parent_volume`=0 OR `parent_volume`!=0)"); //<-- Чёрная магия! Не редактировать!

    Без ТАКОГО последнего AND возвращает 0 строк :(

    guest, 11 Декабря 2008

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

    +29

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    return Array.IndexOf<int>
                (
                    Array.ConvertAll<object, int>
                    (
                    usedTemplates,
                    delegate(object o) { return (int)o; }
                    ),
                    templateID
                )
                >= 0;

    guest, 11 Декабря 2008

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

    −7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    private string parameterName;
    
    public string ParameterName
    {
    get { return parameterName; }
    set { parameterName = value; }
    }

    И эта куча г... вместо: public string ParameterName {get; set;}

    guest, 11 Декабря 2008

    Комментарии (70)
  6. Perl / Говнокод #100

    −1006.6

    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
    @lib_001=('A','G','C','T','A');
    @lib_002=('C','T','A','A','G');		 
    @lib_003=('T','G','C','A','T');
    
    $string=<FILE>;
    @sequence=split("",$string);
    @code=@sequence[-7..-3];
    		
    if((join('',@lib_001) eq join('',@code)) or
        (join('',@lib_001[0..3]) eq join('',@code[0..3])) or
        (join('',@lib_001[1..4]) eq join('',@code[1..4])) or
        (join('',@lib_001[0,1,2,4]) eq join('',@code[0,1,2,4])) or
        (join('',@lib_001[0,2,3,4]) eq join('',@code[0,2,3,4])) or
        (join('',@lib_001[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_001);}
    			
    elsif((join('',@lib_002) eq join('',@code)) or
         (join('',@lib_002[0..3]) eq join('',@code[0..3])) or
         (join('',@lib_002[1..4]) eq join('',@code[1..4])) or
         (join('',@lib_002[0,1,2,4]) eq join('',@code[0,1,2,4])) or
         (join('',@lib_002[0,2,3,4]) eq join('',@code[0,2,3,4])) or
         (join('',@lib_002[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_002);}
    		
    elsif((join('',@lib_003) eq join('',@code)) or
         (join('',@lib_003[0..3]) eq join('',@code[0..3])) or
         (join('',@lib_003[1..4]) eq join('',@code[1..4])) or
         (join('',@lib_003[0,1,2,4]) eq join('',@code[0,1,2,4])) or
         (join('',@lib_003[0,2,3,4]) eq join('',@code[0,2,3,4])) or
         (join('',@lib_003[0,1,3,4]) eq join('',@code[0,1,3,4]))) 
    	{$tag=join('',@code);
    	 $closest_tag=join('',@lib_003);}
    
    else
    	{$tag=join('',@code);
    	  $closest_tag='NONE';}

    guest, 10 Декабря 2008

    Комментарии (17)
  7. Си / Говнокод #99

    −11.7

    1. 1
    2. 2
    /* add '\0' at the end */
    targetIPString[strlen(targetIPString)] = '\0';

    guest, 10 Декабря 2008

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

    +25.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    while(!$a){
          $rd = rand(1,999999);
          $mdrd = md5($rd);
          db_query("SELECT * FROM players WHERE mdid = '$mdrd' LIMIT 1;");
          $fla = db_fetch();
               if(empty($fla))
               $a=1;
               }

    Молодость...
    // Поиск уникального идентификатора для юзера в базу данных.

    guest, 10 Декабря 2008

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

    +29

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    bool MyProc::CompareModule(int *operand1, int *operand2, int n) {
        for (int i = 1; i < n; i++) {
            if (operand1[i] != operand2[i]) {
                if (operand1[i] < operand2[i])
                    return false;
                else
                    return true;
            };
        };
        return true;
    };

    guest, 10 Декабря 2008

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

    +25.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if(dOper1p->Caption == "-0")
       dOper1p->Caption = "+0";
     if(dOper2p->Caption == "-0")
       dOper2p->Caption = "+0";
    
     if(dOper1m->Caption == "-0.0")
       dOper1m->Caption = "+0.0";
     if(dOper2m->Caption == "-0.0")
       dOper2m->Caption = "+0.0";

    типичный представитель говнокода

    guest, 10 Декабря 2008

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