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

    +151

    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 datRus ($dat) 
       {  $day = substr($dat, 8, 2); 
          $mon = substr($dat, 5, 2);
          $year= substr($dat, 0, 4); 
          switch ($mon) 
          {     case 1:  $month='Января'; break;
                case 2:  $month='Февраля'; break; 
                case 3:  $month='Марта'; break; 
                case 4:  $month='Апреля'; break; 
                case 5:  $month='Мая';  break; 
                case 6:  $month='Июня'; break; 
                case 7:  $month='Июля'; break; 
                case 8:  $month='Августа'; break; 
                case 9:  $month='Сентября'; break; 
                case 10: $month='Октября'; break; 
                case 11: $month='Ноября'; break; 
                case 12: $month='Декабря'; break; 
                default: $month=$mon;     break;
          }      
          $str = $day.' '.$month.' '.$year;
          return $str;        
       }

    Преобразование даты из mysql формата :)

    frexin, 18 Июня 2010

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

    +105

    1. 1
    public T GetT<T>(T t1, T t2) where T : class, IEnumerable<T>, new() { return new T().Concat(t1.Concat(t2)) as T; }

    привет всем! давно я не выкладывал перлы)
    история сего кода такова: сидел я и придумывал вопросы на анкетирование при принятии на работу в мою контору. дело дошло до дженериков. не долго думая родилась сия жесть. када я сам понял шо написал, был подстолом.
    вчитайтесь (вдумайтесь) в код!
    то шо получилось - это код, который с синтаксической точки зрения абсолютно правильный, и он закомпилируется, НО, этот метод невозможно вызвать принципе! нельзя построить синтаксическую конструкцию средствами языка, ибо это будет постоянно сложенный на один уровень енумерейбл дженерик.
    так-то!

    xeonix, 18 Июня 2010

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

    +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
    class Kohana_Date {
    // ....
    
    	/**
    	 * Number of hours in a day. Typically used as a shortcut for generating a
    	 * list that can be used in a form.
    	 *
    	 *     $hours = Date::hours(); // 01, 02, 03, ..., 10, 11, 12
    	 *
    	 * @param   integer  amount to increment each step by
    	 * @param   boolean  use 24-hour time
    	 * @param   integer  the hour to start at
    	 * @return  array    A mirrored (foo => foo) array from start-12 or start-23.
    	 */
    	public static function hours($step = 1, $long = FALSE, $start = NULL)
    	{
    		// ... implementation
    	}
    
    	/**
    	 * Number of months in a year. Typically used as a shortcut for generating
    	 * a list that can be used in a form.
    	 *
    	 *     Date::months(); // 01, 02, 03, ..., 10, 11, 12
    	 *
    	 * @uses    Date::hours
    	 * @return  array  A mirrored (foo => foo) array from 1-12.
    	 */
    	public static function months()
    	{
    		return Date::hours();
    	}
    }

    Занятный способ сократить код, правда вносящий небольшую суматоху )

    zerkms, 18 Июня 2010

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

    +170

    1. 1
    return (this.name == objToCompare.name) ? true : false;

    Из платного учебника по JS. 2350 рублей.

    Ceyce, 17 Июня 2010

    Комментарии (99)
  5. bash / Говнокод #3502

    −138

    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
    #!/bin/sh
    
    net() {
        if ( grep eth0 /proc/net/dev > /dev/null );
        then
    		if (ifconfig eth0|grep -e "inet addr:" > /dev/null);
    		then
    			echo "eth0";
    			ifconfig eth0|grep -e "inet addr:" | sed 's/.*r://; s/\ .*//';
    			ifconfig eth0|grep bytes | sed 's/\ //g; s/(/$/; s/.*\$//; s/).*(/ /; s/)//'
    			echo "::"
    		fi;
        fi;
    
        if ( grep wlan0 /proc/net/dev > /dev/null );
        then
    		if (ifconfig wlan0|grep -e "inet addr:" > /dev/null);
    		then
    			echo "wlan0";
    			ifconfig wlan0|grep -e "inet addr:" | sed 's/.*r://; s/\ .*//';
    			ifconfig wlan0|grep bytes | sed 's/\ //g; s/(/$/; s/.*\$//; s/).*(/ /; s/)//'
    			echo "::"
    		fi;
        fi;
    
        if ( grep usb0 /proc/net/dev > /dev/null );
        then
    		if (ifconfig usb0|grep -e "inet addr:" > /dev/null);
    		then
    			echo "usb0";
    			ifconfig usb0|grep -e "inet addr:" | sed 's/.*r://; s/\ .*//';
    			ifconfig usb0|grep bytes | sed 's/\ //g; s/(/$/; s/.*\$//; s/).*(/ /; s/)//'
    			echo "::"
    		fi;
        fi;
    }
    
    space() {
        df -h|grep -e "/$" | sed 's/^[a-z0-9/]*\ *[0-9,]*[MG]\ *[0-9,]*[MG]//; s/[0-9]*\%//; s/\ *//g; s/\// \//'
        echo "::"
        df -h|grep -e "/home$" | sed 's/^[a-z0-9/]*\ *[0-9,]*[MG]\ *[0-9,]*[MG]//; s/[0-9]*\%//; s/\ *//g; s/\// \//'
    }
    
    battery() {
        if ( grep -e "discharging" /proc/acpi/battery/BAT0/state > /dev/null || \
    		grep -e "charging$" /proc/acpi/battery/BAT0/state > /dev/null);
        then
    		echo -n "::" $(~/.wmii-3.5/battery.py)
        fi;
    }
    
    echo -n $(net)\
        $(space)\
        "::" "LA" $(uptime | sed 's/.*e://; s/,\ .*//')\
        "::" $(uptime | sed 's/.*up//; s/[0-9]\ users.*//; s/,//g')\
        "::" $(cat /proc/acpi/thermal_zone/TZ00/temperature|sed 's/[a-z]*:\ *//; s/\ /°/')\
        $(battery)\
        "::" $(date "+%F %R:%S")\
        "\n"

    можно сказать, первы серьёзный опыт использования bash(скрипт для нижней панельки wmii). Не покидает ощущение, что ооочень много костылей.

    ilardm, 17 Июня 2010

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

    +167

    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
    /*
      `id` int(10) NOT NULL auto_increment,
      `time_s` timestamp NOT NULL default CURRENT_TIMESTAMP,
      `event` varchar(10) NOT NULL,
      `member` int(4) NOT NULL,
      PRIMARY KEY  (`id`)
    */
    $min = 0;
    $result=mysql_query('select * from `stat_prohod`.`events`');
    while ( $row = mysql_fetch_assoc ( $result ) ) {
    	if ($row ["id"] > $min) {
    		$last = $row;
    		$min = $row ["id"];
    	}
    }

    выборка последней записи.
    табла заполняется
    $query1="INSERT INTO `stat_prohod`.`events` (`event` ,`member` )VALUES ('".$action."', '".$id."');";

    nur, 17 Июня 2010

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

    +229

    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
    ;uint64_t foo(uint32_t x, uint64_t y) { return x*y; }
    
    sub esp, 0×8
    mov edx, [esp+0x14]
    mov ecx, [esp+0xc]
    mov eax, [esp+0x10]
    mov [esp+0x4], esi
    mov esi, edx
    imul esi, ecx
    mul ecx
    mov [esp], ebx
    mov ebx, [esp]
    add esi, edx
    mov edx, esi
    mov esi, [esp+0x4]
    add esp, 0×8
    ret

    оптимизированое умножение - gcc 4.2.4

    3.14159265, 17 Июня 2010

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

    +152

    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
    private function http_post($url, $post_string) {
            
            // add any additional curl options here
            $options = array(CURLOPT_URL => $url,
                             CURLOPT_POST => true,
                             CURLOPT_POSTFIELDS => $post_string,
                             CURLOPT_USERAGENT => "PubSubHubbub-Publisher-PHP/1.0");
            
            $ch = curl_init();
            curl_setopt_array($ch, $options);
                
            $response = curl_exec($ch);
            $this->last_response = $response;
            $info = curl_getinfo($ch);
        
            curl_close($ch);
            
            // all good
            if ($info['http_code'] == 204) 
                return true;
            
            return false;   
        }

    http_post ):

    wiz, 17 Июня 2010

    Комментарии (24)
  9. Куча / Говнокод #3498

    +137

    1. 1
    2. 2
    var companyStr:String = "adobe";
    trace(companyStr.length); // 10

    Найдено в доке к Flash, после покупки Macromedia поиском и заменой имя сменили, коммент забыли.

    AxisPod, 17 Июня 2010

    Комментарии (44)
  10. Куча / Говнокод #3497

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <!-- 3 пустых строчки  -->
    <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN"> 
    <!--  100 пустых строк  -->
    <html> 
    <!--  дальше все что полагается -->

    view-source:http://my.mail.ru/my/visitors

    может и не совсем ГК, но обьясните мне д-ё, зачем там пустые строки - скроллить то все умеют

    Lure Of Chaos, 17 Июня 2010

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