1. Java / Говнокод #2293

    +76.5

    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
    java.util.Date from = dateFromAndToMap.get("from");
            java.util.Date to = dateFromAndToMap.get("to");
            java.sql.Date fromD;
            java.sql.Date toD;
            Long year2100 = Long.valueOf(64060495200000l);
            if (from != null) {
                fromD = new java.sql.Date(from.getTime());
            } else {
                fromD = new java.sql.Date(0);
            }
            if (to != null) {
                toD = new java.sql.Date(to.getTime());
            } else {
                toD = new java.sql.Date(year2100.longValue());
            }

    Год апокалипсиса приложения :) А календарь придумали лузеры, а мы не ищем легких путей ведь перед апокалипсисом все равны

    johnsoft, 17 Декабря 2009

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

    +155.3

    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
    $dir = $_SERVER['DOCUMENT_ROOT'].'/upload/'.$_GET['ID'].'/';
    		$urlz = array();
    		if ($dh = opendir($dir))
    		{
    			clearstatcache();
    			while (($file = readdir($dh)) !== false)
    				if (strlen($file)>3 && substr($file, -4)!='.flv')
    				{
    					$FILE_PATH = $_SERVER['DOCUMENT_ROOT'].'/upload/'.$_GET['ID'].'/'.$file;
    					$TIME = filemtime($FILE_PATH);
    					while (array_key_exists($TIME,$urlz))
    						$TIME++;
    					if (filesize($FILE_PATH)>0)
    						$urlz[$TIME] = $file;
    				}
    		    closedir($dh);
    		    krsort($urlz);
    		}
    		$i = 0;
    		foreach ($urlz as $k=>$v)
    			if ($i>2)
    				unset($urlz[$k]);
    			else
    		    {
    		    	$i++;
    		        $urlz[$k] = 'http://www.'.$_SERVER['HTTP_HOST'].'/upload/'.$_GET['ID'].'/'.$v;
    			}

    atarix12, 17 Декабря 2009

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

    +153.8

    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
    function check_user($l, $p, $sex)
    	{
    	include("config.php");
    	c_mysql();
    	$q=mysql_query("select * from users where NICK='$l'");
    	$q=mysql_fetch_array($q,MYSQL_ASSOC);
    	
    	$qpass=$q["PASSWORD"];
    	$ban=$q["BAN"];
    	$id=$q["ID"];
    
    	if($qpass!="" and $qpass!=$p){ access_denied("не верный пароль");};
    	if($qpass!="" and $ban == 1){ access_denied("этот ник заблокирован");};
    	if($qpass!="" and $qpass==$p){ update_ip($id); build_frame($id, $sex);};
    	if($qpass==""){ new_user($l, $p);};
    
    
    	}
    function access_denied($why)
    	{
    	header("location: lock.php?$why");
    	exit;
    	}
    function title($S)
    	{
    	include("config.php");
    	echo "<title>$CHAT_NAME $S</title>
    	<meta http-equiv=\"Content-Type\" content=\"type/html; charset=windows-1251\"> ";

    разбираю свои исходники за 2005год

    anton, 17 Декабря 2009

    Комментарии (4)
  4. VisualBasic / Говнокод #2290

    −135.9

    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
    Module Module1
    
        Private Const VK_ENTER As UInt32 = &HD
        Private Const KEYEVENTF_KEYUP As UInt32 = &H2
        Declare Auto Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
        Declare Auto Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
        Declare Auto Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
    
    
        Sub Main()
            Console.Title = "AntiPornoAd"
            Console.Write("Подключение к серверу для загрузки списка запрещенных сайтов.")
            Sleep(500)
            Console.Write(".")
            Sleep(500)
            Console.Write(".")
            Sleep(500)
            Console.Write(".")
            Sleep(500)
            Console.Write(".")
            Sleep(500)
            Console.Write(".")
            Sleep(500)
            Console.WriteLine("")
            Console.Title = "Попытка сбора данных об ошибке..."
            Console.WriteLine("По неизвестной причине произошла ошибка в программе")
            Console.WriteLine("Начался сбор данных об ошибке")
            Console.WriteLine("Пожалуйста не закрывайте программу до завершения")
            Dim key As Integer
            Do While True
                key = GetAsyncKeyState(2)
                If key <> 0 Then
                    Sleep(90)
                    keybd_event(VK_ENTER, 0, 0, 0)
                    keybd_event(VK_ENTER, 0, KEYEVENTF_KEYUP, 0)
                    Sleep(50)
                End If
    
            Loop
        End Sub
    End Module

    Попробуйте запустить на компе подруги - масса эмоций гарантирована
    (не будет работать правая кнопка мыши :))

    x0wl, 16 Декабря 2009

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

    −122

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Функция ВыделитьНалог(СуммаСНалогом,Ставка)
            Если Ставка<>-100 Тогда
                    Возврат(Ставка*СуммаСНалогом/(100+Ставка));
            Иначе
                    Сообщить("Налог не рассчитан");
                    Возврат(0);
            КонецЕcли;
    КонецФункции

    В одном продукте, имеющем сертификат 1с Совместимо!

    Нет, с программерской точки зрения верно. Только как ставка налога может быть минус сто процентов? O.o

    nslz, 16 Декабря 2009

    Комментарии (15)
  6. Куча / Говнокод #2288

    +130

    1. 1
    2. 2
    for INPUTFILE in `ls ${_BUILD_DIR}/db/full/migrate[0-9].sql`; do
    	STAGE=`basename $INPUTFILE | awk -F "" '{print $8}'`

    Я видел много, но чтобы ТАК получали символ из строки...
    awk - поистине многофункциональный язык!

    nil, 16 Декабря 2009

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

    −110.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
    my $style_doc = $parser->parse_string(q~
       ... Здесь идёт нормальный такой шаблон xslt
    ~);
    my $stylesheet = $xslt->parse_stylesheet($style_doc);
    
    my $results = $stylesheet->transform( $source );
    my $shit = $stylesheet->output_string($results);
    
    $shit =~ s%(<table.*?<table.*?</table>.*?</table>)\s*(<table.*?<table.*?</table>.*?</table>)\s*(<table.*?<table.*?</table>.*?</table>)%<tr><td valign="top">$1</td><td valign="top">$2</td><td valign="top">$3</td></tr>%gs;
    
    $shit = qq{<table cellpadding="0" cellspacing="8" border="0">${shit}</table>};
    print 'document.write('.JsUtils::js_object($shit).');';

    В xslt, очевидно, всё не осилили - добъём регуляркой :)

    Suor, 16 Декабря 2009

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

    +139.4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    var viewsId = new List<int>(views.Select(v => v.ViewId).Distinct());
    
    var sviewsId = "," + String.Join(",", viewsId.Select(i => i.ToString()).ToArray()) + ",";
    
    _total = (from d in context.TableA
                                      join uvd in context.TableB on d.DocID equals uvd.DocID
                                      join uv in context.TableC on uvd.ID equals uv.ID
                                      where sviewsId.IndexOf("," + uv.ID.ToString() + ",") > 0
                                      select d.DocID)
                                      .Distinct ()
                                      .Count ();

    Оригинальный способ обойти ограничение на 2100 параметров. А как быстро оно будет работать!
    views, разумеется, из того же контекста.

    eval_2009, 16 Декабря 2009

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

    +143.7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    #define true false
    
    ...
    
    
    #define double int
    
    ...
    
    
    #define TRUE FALSE
    // удачной отладки суки

    4cppMan, 16 Декабря 2009

    Комментарии (6)
  10. Си / Говнокод #2284

    +133.4

    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
    /****************************************************************************
     #if !(TARGET_IS_NT50_OR_LATER)
    #error You need a Windows 2000 or later to run this stub because it uses these features:
    #error   /robust command line switch.
    #error However, your C/C++ compilation flags indicate you intend to run this app on earlier systems.
    #error This app will die there with the RPC_X_WRONG_STUB_VERSION error.
    #endif
    
    
    ...
    
    где-то глубоко
    
    
    *  Macros for targeted platforms
     ****************************************************************************/
    
    #if (0x501 <= _WIN32_WINNT)
    #define TARGET_IS_NT51_OR_LATER                   1
    #else
    #define TARGET_IS_NT51_OR_LATER                   0
    #endif
    
    #if (0x500 <= _WIN32_WINNT)
    #define TARGET_IS_NT50_OR_LATER                   1
    #else
    #define TARGET_IS_NT50_OR_LATER                   0
    #endif
    
    #if (defined(_WIN32_DCOM) || 0x400 <= _WIN32_WINNT)
    #define TARGET_IS_NT40_OR_LATER                   1
    #else
    #define TARGET_IS_NT40_OR_LATER                   0
    #endif
    
    #if (0x400 <= WINVER)
    #define TARGET_IS_NT351_OR_WIN95_OR_LATER         1
    #else
    #define TARGET_IS_NT351_OR_WIN95_OR_LATER         0
    #endif

    Код , сгенерированный компилятором MIDL для dll прокси/заглушки COM объекта.
    VS2005 :)

    4cppMan, 15 Декабря 2009

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