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

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

    +156

    1. 1
    RewriteCond %{REQUEST_URI} !\.(cssіjsіjpgіgifіpng)$

    Творение удаленного сотрудника. Долго не мог понять, почему сервер кидает 500 ошибку.

    PrimeBIT, 13 Сентября 2011

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

    +159

    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
    private function cp1251_utf8($sInput) {
                    $sOutput = "";
                    for ( $i = 0; $i < strlen( $sInput ); $i++ )
                    {
                            $iAscii = ord( $sInput[$i] );
                            if ( $iAscii >= 192 && $iAscii <= 255 )
                                    $sOutput .=  "&#".( 1040 + ( $iAscii - 192 ) ).";";
                            else if ( $iAscii == 168 )
                                    $sOutput .= "&#".( 1025 ).";";
                            else if ( $iAscii == 184 )
                                    $sOutput .= "&#".( 1105 ).";";
                            else
                                    $sOutput .= $sInput[$i];
                    }
    
                    return $sOutput;
            }
    
            protected function utf8_strtr($str, $from, $to = '') {
                    $str = iconv('UTF-8', 'cp1251', $str);
                    $str = $to ? strtr($str, $from, $to) : strtr($str, $from);
                    return iconv('cp1251', 'UTF-8', $str);
            }
    
            public function date_rus($str) {
                    $str = str_replace('Jan', 'Янв', $str);
                    $str = str_replace('Feb', 'Фев', $str);
                    $str = str_replace('Mar', 'Мар', $str);
                    $str = str_replace('Apr', 'Апр', $str);
                    $str = str_replace('May', 'Май', $str);
                    $str = str_replace('Jun', 'Июн', $str);
                    $str = str_replace('Jul', 'Июл', $str);
                    $str = str_replace('Aug', 'Авг', $str);
                    $str = str_replace('Sep', 'Сен', $str);
                    $str = str_replace('Oct', 'Окт', $str);
                    $str = str_replace('Nov', 'Ноя', $str);
                    $str = str_replace('Dec', 'Дек', $str);
                    return $str;
            }

    пара функций из одного интересного проекта =)
    перекодировка с подвыпердоворотом, перевод даты на русский без компромисов

    fr_butch, 06 Сентября 2011

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

    −99

    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
    begin
        # etc
      rescue Exception => e
        case e
          when LinkedIn::Unauthorized
            account.invalidate_token if !account.invalid_token?
            raise InvalidTokenException.new(account.primary, provider_name)
          when LinkedIn::InformLinkedIn, LinkedIn::Unavailable  #LinkedIn::Unavailable represents 502..503 error codes & LinkedIn::InformLinkedIn represent 500
            raise UnexpectedApiException.new(provider_name)
          else
            handle_api_exception(e, e.message)
        end
      end

    элегантный отлов ексепшнов

    sumskyi, 06 Сентября 2011

    Комментарии (5)
  5. Java / Говнокод #7771

    +84

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    List<SomeClass> someClassList = new ArrayList<SomeClass>();
    <...>
    int i = 0;
    for (SomeClass someClassVariable: someClassList) {
        doSomething(someClassList().get(i).getText(), someClassList().get(i).getId);
        ++i;
    }

    Art, 05 Сентября 2011

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

    +164

    1. 1
    layer = eval('document.getElementById("' + name + '").style');

    Зачееееем?

    jQuery, 02 Сентября 2011

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

    +163

    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
    $nombre = $_POST['nombre'];
    $email = $_POST['email'];
    if ($nombre == "" || $email == "") {
    ...
        if (!isValidEmail($email)) {
            echo "<script type=\"text/javascript\">
        alert('El e-mail que ha introducido es incorrecto');  
         document.location.href='index.html';
      </script>";
            exit();
        } else {
    ...
    if ($result) {
                    $resultado = mysql_query("INSERT INTO datos (nombre,email) VALUES ('" . $nombre . "','" . $email . "')", $conexion);

    выцарапываю себе глаза. это почти index в продакшене.

    Swart, 02 Сентября 2011

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

    +158

    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
    $(document).ready(function(){
    	i=1;
    	$("#go_pr").click(function () {
    		i=i-1;
    		if (i==0) {i=4;}
    		$('.diva').hide('fade');
    		$('#s'+i).show('fade');
    		$('.go').removeClass('acti');
    		$('#go'+i).addClass('acti');
    		return false;
    	});
    	$("#go_nx").click(function () {
    		i=i+1;
    		if (i==5) {i=1;}
    		$('.diva').hide('fade');
    		$('#s'+i).show('fade');
    		$('.go').removeClass('acti');
    		$('#go'+i).addClass('acti');
    		return false;
    	});
    	$("#go1").click(function () {
    		i=1;
    		$('.diva').hide('fade');
    		$('#s1').show('fade');
    		$('.go').removeClass('acti');
    		$(this).addClass('acti');
    	});
    	$("#go2").click(function () {
    		i=2;
    		$('.diva').hide('fade');
    		$('#s2').show('fade');
    		$('.go').removeClass('acti');
    		$(this).addClass('acti');
    	});
    	$("#go3").click(function () {
    		i=3;
    		$('.diva').hide('fade');
    		$('#s3').show('fade');
    		$('.go').removeClass('acti');
    		$(this).addClass('acti');
    	});
    	$("#go4").click(function () {
    		i=4;
    		$('.diva').hide('fade');
    		$('#s4').show('fade');
    		$('.go').removeClass('acti');
    		$(this).addClass('acti');
    	});
    });

    andrew_crunchdeal, 02 Сентября 2011

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

    +147

    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
    template<typename _Tp>
        pair<_Tp*, ptrdiff_t>
        get_temporary_buffer(ptrdiff_t __len)
        {
          const ptrdiff_t __max =
      __gnu_cxx::__numeric_traits<ptrdiff_t>::__max / sizeof(_Tp);
          if (__len > __max)
      __len = __max;
          
          while (__len > 0) 
      {
        _Tp* __tmp = static_cast<_Tp*>(::operator new(__len * sizeof(_Tp), 
                  std::nothrow));
        if (__tmp != 0)
          return std::pair<_Tp*, ptrdiff_t>(__tmp, __len);
        __len /= 2;                                    // !?!?!?!?!?!?!?!?
      }
          return std::pair<_Tp*, ptrdiff_t>(static_cast<_Tp*>(0), 0);
        }
    
      template<typename _Tp>
        inline void
        return_temporary_buffer(_Tp* __p)
        { ::operator delete(__p, std::nothrow); }

    CPPGovno, 02 Сентября 2011

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

    +163

    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
    <?php 
    
    function check($str) { 
    
    $str = htmlentities(trim($str), ENT_QUOTES, 'UTF-8'); 
        $str = nl2br($str); 
        $str = strtr($str, array ( 
            chr(0)=> '', 
            chr(1)=> '', 
            chr(2)=> '', 
            chr(3)=> '', 
            chr(4)=> '', 
            chr(5)=> '', 
            chr(6)=> '', 
            chr(7)=> '', 
            chr(8)=> '', 
            chr(9)=> '', 
            chr(10)=> '', 
            chr(11)=> '', 
            chr(12)=> '', 
            chr(13)=> '', 
            chr(14)=> '', 
            chr(15)=> '', 
            chr(16)=> '', 
            chr(17)=> '', 
            chr(18)=> '', 
            chr(19)=> '', 
            chr(20)=> '', 
            chr(21)=> '', 
            chr(22)=> '', 
            chr(23)=> '', 
            chr(24)=> '', 
            chr(25)=> '', 
            chr(26)=> '', 
            chr(27)=> '', 
            chr(28)=> '', 
            chr(29)=> '', 
            chr(30)=> '', 
            chr(31)=> '' 
        )); 
        $str = str_replace("\'", "&#39;", $str); 
        $str = str_replace('\\', "&#92;", $str); 
        $str = str_replace("|", "I", $str); 
        $str = str_replace("||", "I", $str); 
        $str = str_replace("/\\\$/", "&#36;", $str); 
        $str = mysql_real_escape_string($str); 
        return $str; 
    
    } 
    
    ?>

    Хакир не пройдет.

    7ion, 31 Августа 2011

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

    +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
    public function get($module, $fields, $options=null) {
            $results = $this->get_with_related($module, array($module => $fields), $options);
            $records = array();
            if ($records) {
                foreach ($results['entry_list'] as $entry) {
                    $record = array();
                    foreach ($entry['name_value_list'] as $field) {
                        $record[$field['name']] = $field['value'];
                    }
                    $records[] = $record;
                }
            }
            return $records;
        }

    SugarCRM REST API Class https://github.com/asakusuma/SugarCRM-REST-API-Wrapper-Class/blob/master/sugar_rest.php

    stark, 30 Августа 2011

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