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

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

    +161

    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
    <?php
            define('PATH_LEN', 32);
            define('ALPH_SIZE', 66);
            
            class Security
            {
                    public static $rus_alphabet = array('А', 'а', 'Б', 'б', 'В', 'в', 'Г', 'г', 'Д', 'д', 'Е', 'е', 'Ё', 'ё',   'Ж', 'ж',   'З', 'з', 'И', 'и', 'Й', 'й',   'К', 'к', 'Л', 'л', 'М', 'м', 'Н', 'н', 'О', 'о', 'П', 'п', 'Р', 'р', 'С', 'с', 'Т', 'т', 'У', 'у', 'Ф', 'ф', 'Х', 'х', 'Ц', 'ц', 'Ч', 'ч',   'Ш', 'ш',   'Щ', 'щ',   'Ъ', 'ъ', 'Ы', 'ы', 'Ь', 'ь',     'Э', 'э', 'Ю', 'ю',     'Я', 'я');
                    public static $eng_alphabet = array('A', 'a', 'B', 'b', 'V', 'v', 'G', 'g', 'D', 'd', 'E', 'e', 'Yo', 'yo', 'Zh', 'zh', 'Z', 'z', 'I', 'i', 'Ji', 'ji', 'K', 'k', 'L', 'l', 'M', 'm', 'N', 'n', 'O', 'o', 'P', 'p', 'R', 'r', 'S', 's', 'T', 't', 'Y', 'y', 'F', 'f', 'H', 'h', 'C', 'c', 'Ch', 'ch', 'Sh', 'sh', 'Ch', 'ch', '_', '_', '_', '_', '_', '_', '_', '_', 'U', 'u', 'Ya', 'ya');
                    
                    static public function Transform($string)
                    {
                            $string = htmlspecialchars($string);
                            $string = strip_tags($string);
                            
                            return $string;
                    }
                    
                    static public function TransformName($string)
                    {
                            $temp = '';
                            
                            for($i = 0; $i < strlen($string); $i++)
                            {
                                    if($string[$i] === ' ')
                                            {
                                                    $temp += '_';
                                                    continue;
                                            }
                                    
                                    for($j = 0; $j < ALPH_SIZE; $j++)
                                            if(Security::$rus_alphabet[$j] === Security::$string[$i])
                                                    {
                                                            $temp += Security::$eng_alphabet[$j];
                                                            continue 2;                                                     
                                                    }
                                    $temp += $string[$i];                   
                            }
                            
                            return $temp;
                    }
                    
            }
    ?>

    qbasic, 17 Февраля 2011

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

    +135

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    //...
    	iInitCommDevicePeriod = GetPrivateProfileInt(extraTunungLine, _T("InitCommDevicePeriod"), INIT_COMM_DEVICE_TIMER_PERIOD / 1000, extraFilePath) * 1000;
    	iReconnectSocketPeriod = GetPrivateProfileInt(extraTunungLine, _T("ReconnectSocketPeriod"), CONN_WITH_SOCK_LOST_TIMER_PERIOD / 1000, extraFilePath) * 1000;
    	m_uiCheckLoopPeriod = GetPrivateProfileInt(extraTunungLine, _T("CheckLoopPeriod"), CCC_LINE_CHECK_LOOP_TIMER_PERIOD / 1000, extraFilePath) * 1000;	
    //....

    Автор тот же...
    мистическая инициализация таймеров.
    зачем делить default value на 1000 перед посылкой в функцию, чтобы потом результат умножить на 1000. Может, чтобы время было в целых секундах?

    ShuraKotov, 13 Февраля 2011

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

    +157

    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
    <?
    $past=time()-900;  // задаем время через которое будет удолен uzer
    mysql_query("DELETE FROM session WHERE time<$past"); // удаляем uzera которые все это время ничего на сайте не делал
    if(isset($_SESSION['name_user'])){
    $result=mysql_query("SELECT time FROM session WHERE username='$name_user'",$db); 
    $ctime=time();
    if($row=mysql_fetch_array($result)){
    mysql_query("UPDATE session SET username='$name',time='$ctime' WHERE username='$name'"); //перезаписываем время посещения страницы
    } else {
    mysql_query("INSERT INTO session (username,time) VALUES('$name','$ctime')"); //если он в первый рас тут то добавляем его в БД
    }
    }
    $result=mysql_query("SELECT COUNT(*) FROM session");
    $count=mysql_fetch_array($result);

    qbasic, 13 Февраля 2011

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

    +166

    1. 1
    2. 2
    $pif=explode('?',$_SERVER['REQUEST_URI']);
    $tym=explode('=',$pif[1]);

    Вот такой вот способ получить значение переменной из GET запроса вида:
    http://127.0.0.1/component/index.php?name=r37.edoc

    isergey, 10 Февраля 2011

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

    +162

    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
    class GlData2DLine
    {
      virtual std::vector<Vec2d> getDecimatedPoints();
     protected:
      std::vector<Vec2d> c_decimated_points;
    }
    
    std::vector<Vec2d> GlData2DLine::getDecimatedPoints()
    {
      return c_decimated_points;
    }
    
    class GlData2DLineOD : public GlData2DLine
    {
      virtual std::vector<Vec2d> getDecimatedPoints();
    }
    
    std::vector<Vec2d> GlData2DLineOD::getDecimatedPoints()
    {
      return c_decimated_points;
    }

    Наш любимый китаец увлекся ООП и полиморфизмом что забыл очевидное.

    kitaec, 09 Февраля 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // функция с именем is_url, передаваемые ей перем.: $url.  
    function is_url($url)
    {  
      // если ничего не ввели, иначе:  
      if($url == "") return 0;  
      // если не соответствует стандарту, возвращаем ошибку.  
      if(!(ereg("\.", $url) && ereg("http://", $url) && ereg("/", str_replace("http://" , "", $url)))) return 0;  
      else return 1;  
    }

    Проверка URL на валидность (http://www.snippy.ru/snippet/213/)

    zamknulo, 09 Февраля 2011

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

    −235

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if( end.x % 2 != 0 )
    {
    //20 строк кода
    }
    else if( end.x % 2 == 0 )
    {
    //20 строк кода
    }

    С того же места, чуток ниже

    Werdn, 08 Февраля 2011

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

    +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
    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
    function f1(element){
      if (element.value.length == 3 && event.keyCode != 8){
       document.getElementById('phone2').focus();
      }
     }
        
     function f2(element){
      // Возврат в phone1 после стирания первого символа в phone2:
      if (element.value.length == 0 && event.keyCode == 8){
       setCaretPosition(document.getElementById('phone1').value.length, inp = 'phone1');
      }   
      // Переход в phone3 после ввода третьего символа в phone2:
      if(element.value.length == 3 && event.keyCode != 8){
       document.getElementById('phone3').focus();
      }
     } 
    
     function f3(element){
      // Возврат в phone2 после стирания первого символа в phone3:
      if (element.value.length == 0 && event.keyCode == 8){
       setCaretPosition(document.getElementById('phone2').value.length, inp = 'phone2');
      }
      // Переход в phone4 после ввода второго символа в phone3:
      if(element.value.length == 2 && event.keyCode != 8){
       document.getElementById('phone4').focus();
      }  
     }
     
     function f4(element){
      // Возврат в phone3 после стирания первого символа в phone4:
      if (element.value.length == 0 && event.keyCode == 8){
       setCaretPosition(document.getElementById('phone3').value.length, inp = 'phone3');
      }
     }
     
     function f5(element){
      if (element.value.length == 4 && event.keyCode != 8){
       document.getElementById('phone6').focus();
      }
     }
        
     function f6(element){
      // Возврат в phone5 после стирания первого символа в phone6:
      if (element.value.length == 0 && event.keyCode == 8){
       setCaretPosition(document.getElementById('phone5').value.length, inp = 'phone5');
      }
     }
     
     function setCaretPosition(pos, inp){
      var ctrl = document.getElementById(inp);
          
      if(ctrl.setSelectionRange){
       ctrl.focus();
       ctrl.setSelectionRange(pos, pos);
      }
      else if(ctrl.createTextRange){
       var range = ctrl.createTextRange();
       range.collapse(true);
       range.moveEnd('character', pos);
       range.moveStart('character', pos);
       range.select();
      }
      }

    проверка на корректность ввода телефона

    DrFreez, 06 Февраля 2011

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

    +153

    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
    abstract class Cover_Abstract_Simple implements Cover_Interface
    {
        protected $data = array();
    
        public function __get($key)
        {
            return isset($this->data[$key]) ? $this->data[$key] : null;
        }
    
        public function __set($key, $value)
        {
            $this->data[$key] = $value;
        }
    
        public function __isset($key)
        {
            return isset($this->data[$key]);
        }
    
        public function __unset($key)
        {
            unset($this->data[$key]);
        }
    
        public function getData()
        {
            return $this->data;
        }
    
        public function setData($data)
        {
            foreach ($data as $key => $value)
            {
                $this->$key = $value;
            }
        }
    
        public function clear()
        {
            $this->data = array();
        }
    
        public function __toString(){}
    }

    qbasic, 06 Февраля 2011

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

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    static void WriteToFile()
    {
    StreamWriter SW;
    SW=File.CreateText("c:\\MyTextFile.txt");
    SW.WriteLine("God is greatest of them all");
    SW.WriteLine("This is second line");
    SW.Close();
    Console.WriteLine("File Created SucacessFully");
    }

    SucacessFully, что здесь непонятного!)
    А строки 3 и 4 стоило написать в одну строчку сразу.
    Источник: http://www.csharphelp.com/2005/12/simple-text-file-operations-in-c/

    RaZeR, 03 Февраля 2011

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