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

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

    +145.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
    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
    <?
    //Для начала назначаем переменные
    
    .if(eregi("opera",$HTTP_USER_AGENT))// Если у тебя Опера, то переменная $browse = OP
    $browser = "OP";
    
    else if(eregi("msie",$HTTP_USER_AGENT))// Если у тебя MSIE, то переменная $browse = IE 
    $browser = "IE";
    
    else if(eregi("Mozilla.[4.]",$HTTP_USER_AGENT))
    $browser = "NS";
    
    else if(eregi("Mozilla.[5|6]",$HTTP_USER_AGENT))
    $browser = "MO";
    else // если что-то другое , то OT
    $browser = "OT";
    ?>
    //Все . Закончили с определением. Мы уже знаем какой у тебя браузер. Теперь выведеминфу о тебе.
    
    <? if ($browser=="IE") {
    echo "Internet Explorer";//Если ie, то пишет Internet Explorer
    }
    if ($browser=="OP") {
    echo "Opera!
    Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!";
    }
    if ($browser=="NS") {
    echo "Netscape!
    Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!
    ";
    }
    if ($browser=="MO") {
    echo "Mozilla! Обнови свой броузер и перестань морочить голову дизайнерам всякой межбраузерностью!";
    }
    if ($browser=="OT") {
    echo "А что у вас за Browser?";//если OT то пишет ...
    }
    ?>

    Решил поинтересоваться у Яндекса как определить браузер посетителя (на PHP).
    Вторая ссылка (http://www.realcoding.net/article/view/4910) привела на «замечательный» пример скрипта.

    sbb, 23 Ноября 2009

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

    +68.7

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // Finally, parse shader script and load data
    if (!LoadShaderResource(_proxyShader, scriptData))
    {
            runtime_assert_msg(ASSERT_Forced, "Proxy shader failed to initialize.\n"
                    "You are not assumed to be using such sucking hardware.\n"
                    "Kill your GPU and then kill yourself, looser!\n\n"
                    "Best regards, Abyss Lights Team");
    }

    Хорошо что в релиз не попало :) Совершенно случайно нашел в render системе.

    Durane, 18 Ноября 2009

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

    +169.5

    1. 1
    2. 2
    3. 3
    // генерируем 2 раз для лучшей случайности
    $wpdb->get_results('SELECT id FROM ' . $table_prefix . 'another_random_quote WHERE tag="'.$tag.'" ORDER BY RAND() LIMIT 1');
    $quotes = $wpdb->get_results('SELECT * FROM ' . $table_prefix . 'another_random_quote WHERE tag="'.$tag.'" ORDER BY RAND() LIMIT ' . intval($amount));

    Встретил в плагине для вордпресса. Объясните, что такое лучшая случайность?

    junqed, 12 Ноября 2009

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

    −90.1

    1. 1
    var data_xml: XML = <data>{ new XML('<!' + '[CDATA[' + remote_data + ']]' + '>') }</data>

    Примерно вот так в MXML предлагается запихивать данные внутрь CDATA. Новый объект XML чтобы обойти баг во флексе, а XSS подобное разбиение строк, чтобы Flex Builder не подумал, что ]]> закрывает CDATA вокруг Script

    sudden_def, 11 Ноября 2009

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

    +138.7

    1. 1
    Что бы познать рекурсию надо познать рекурсию.

    dim1r, 30 Октября 2009

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

    +68

    1. 1
    2. 2
    char *GetNumRenderedObjectsString() { char *mString = new char [128]; itoa (mNumRenderedObjects, mString, 10); return mString; };
    char *GetNumDiscardedObjectsString() { char *mString = new char [128]; itoa (mNumDiscardedObjects, mString, 10); return mString; };

    Отличная работа с памятью.

    benin, 25 Октября 2009

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

    +126.6

    1. 1
    2. 2
    3. 3
    4. 4
    if (websites.Any() && websites.Count() > 1)
    {
    ....
    }

    Без комментариев

    AndrewK, 20 Октября 2009

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

    +139

    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
    // export in csv - part of the code
    // ...
                foreach (users_view _item in _users_view)
                {
                    _writer.Write(String.Format("{1}{0}{2}{0}{3}{0}{4}{0}{5}{0}{6}{0}{7}{0}{8}{0}{9}{0}{10}{0}{11}{0}{12}{0}{13}{0}{14}{0}{15}{0}{16}{0}{17}{0}{18}{0}{19}{0}{20}{0}{21}{0}{22}{0}{23}{0}{24}\n",
                        AppSettingsReader.GetValue("CSVFileSeparator"),
                         @"""" + _item.title_name + @"""", @"""" + _item.first_name + @"""",
                         @"""" + _item.last_name + @"""", @"""" + _item.job_title + @"""",
                        @"""" + _item.user_type_name + @"""",
                                                
                        @""""+_item.company_name+@"""",
                        (_item.telephone != null) ? (@"""" + _item.telephone + @"""") : (""),
                        (_item.fax != null) ? (@"""" + _item.fax + @"""") : (""),
                        @"""" + _item.email + @"""",
                        (_item.account_email != null) ? (@"""" + _item.account_email + @"""") : (""),
                        @"""" + _item.site_address + @"""",
                        @"""" + _item.advertisement_source_name+@"""",
    
                        @"""" + _item.address_1+@"""",
                        (_item.address_2 != null) ? (@"""" + _item.address_2+@"""") : (""),
                        @"""" + _item.country_name+@"""",
                       
                        //_item.email_format_name,
    
                        (_item.postcode != null) ? (@"""" + _item.postcode+@"""") : (""),
                        (_item.county != null) ? (@"""" + _item.county+@"""") : (""),
                        @"""" + _item.town + @"""",
                    //    (_item.is_active == false) ? ("No") : ("Yes"),
    
                        @"""" + _item.username+@"""",
                        @"""" + _item.password+@"""",
                        @"""" + _item.account_type_name + @"""",
    
                        @"""" + _item.creation_date + @"""",
    
                        (_item.is_newsletter_subscriber == false) ? ("No") : ("Yes"),
                        (_item.is_marketing_subscriber == false) ? ("No") : ("Yes")
                        )
                    );
                }

    Вот что нашел :)

    bugotrep, 14 Октября 2009

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

    +81.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public void checkClass(Object target){
            if (!target.getClass().toString().contains("myBuilder")){
                throw new IllegalArgumentException("Передан объект неверного типа");
            }
        }

    instanceof - это для трусов!

    Jk, 14 Октября 2009

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

    +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
    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
    <?php
        public function run()
        {
            $db = Registry::get('Db');
    
            $db->transaction(Db_Database::START);
    
            $success = $db->query()->update()
                ->table('forum_topics')
                ->set('PostsCount = PostsCount - 1')
                ->set('LastPostID = ('
                    . $db->query()
                        ->select()->fields('ID')
                        ->table('forum_posts')->order('ID', 1) // DESC
                        ->where('TopicID = %d', $this->post->topic->id)
                        ->limit(1)->compile()->getQuery()
                    . ')')
                ->set('FirstPostID = ('
                    . $db->query()
                        ->select()->fields('ID')
                        ->table('forum_posts')->order('ID')
                        ->where('TopicID = %d', $this->post->topic->id)
                        ->limit(1)->compile()->getQuery()
                    . ')')
                ->where('ID = %d', $this->post->topic->id)
                ->compile()->run()->success()
            && $db->query()->update()
                ->table('forum_cats')
                ->set('PostsCount = PostsCount - 1')
                ->set('LastTopicID = ('
                    . $db->query()
                        ->select()->fields('ID')
                        ->table('forum_topics')->order('LastPostID', 1) // DESC
                        ->where('CatID = %d', $this->post->topic->category->id)
                        ->limit(1)->compile()->getQuery()
                    . ')')
                ->where('ID = %d', $this->post->topic->category->id)
                ->compile()->run()->success()
            && $db->query()->update()
                ->table('forum_posts')
                ->set('Deleted = 1')
                ->where('ID = %d', $this->post->id)
                ->compile()->run()->success();
            $db->transaction($success ? Db_Database::COMMIT : Db_Database::ROLLBACK);
            return $success;
        }

    Вот такая вот жесть бывает. Изменение счетчиков на форуме (денормализация) с использованием альфа-версии кверибилдера. по-моему — устрашающе)

    Shock, 13 Октября 2009

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