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

    +55

    1. 1
    2. 2
    3. 3
    4. 4
    if (trim((string) $_GET['tag'])) {
        $current = $conn->fetchAll("SELECT LOWER('" . (string) $_GET['tag'] . "') as `tag`");
        $current = $current[0]['tag'];
    }

    UnnamedUser, 09 Ноября 2012

    Комментарии (11)
  2. Ruby / Говнокод #12087

    −109

    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
    #Кусок красивого кода контроллера сайта на Ruby On Rails
    class QuestionsController < ApplicationController
    
      #Извлекаем отвеченные вопросы методом говнокода
      def answered
          @subtitle = "Отвеченные"
          #Нам нужны все-все-все вопросы и даже не отвеченные. Скрестим пальцы на случай если их будет много
          @questions = Question.all
          #Обязательно преобразуем все в массив, сделаем N+1 запрос и успешно отфильтруем вопросы без ответа
          @questions.to_a.delete_if { |q| q.answer.nil? }
          #Чуть не забыл, нам же нужно извлечь 10 вопросов для 2-й страницы, а не все что есть
          paginate(@questions)
          #PROFIT
          render "index"
      end
    
    end

    Ну в общем, код хорошо прокоментирован, думаю все и так ясно. =)

    SunnyMagadan, 09 Ноября 2012

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

    +45

    1. 1
    2. 2
    3. 3
    $parts = preg_replace('~[^0-9a-z-/]~', '',  parse_url( $_SERVER['REQUEST_URI'] , PHP_URL_PATH ) );
    $parts = explode('/', $parts );
    $parts = array_values( array_filter( $parts, function( $var ){ return !empty( $var ); } ) );

    функциональность пхп развращает
    вместо array_filter с callback-ом можно было обработать строку trim($parts, '/');
    если уж array_filter, то в данном случае прокатит и array_filter( $parts, 'strlen' );
    это хотя бы не потребует обновления до версии 5.3

    shitcoder, 09 Ноября 2012

    Комментарии (1)
  4. Куча / Говнокод #12085

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    main =do
            let b = 56
            let b = b+1
            print b

    Зачем есть возможность задавать переменные с однаковыми именами, если их использовать ниже всё равно нельзя?
    http://ideone.com/b1DGYF

    LispGovno, 09 Ноября 2012

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

    +73

    1. 1
    http://javadoc.bugaco.com/com/sun/java/swing/plaf/nimbus/InternalFrameInternalFrameTitlePaneInternalFrameTitlePaneMaximizeButtonPainter.html

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

    wvxvw, 09 Ноября 2012

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

    +124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    data Trivalent = TriFalse | TriUnknown | TriTrue deriving (Show, Eq, Ord)
    
    (&) :: Trivalent -> Trivalent -> Trivalent -- &&
    (!) :: Trivalent -> Trivalent -> Trivalent -- ||
    nt :: Trivalent -> Trivalent -- not

    В хасскеле нет класса для логических значений. А значит хрен переопределишь операторы &&, || и функцию not

    Fai, 08 Ноября 2012

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

    +134

    1. 1
    2. 2
    3. 3
    4. 4
    for (int i = X; i <= (X + 1); i++)
        {
            for (int j = Y; j <= (Y + 1); j++)
            {

    Crazy_penguin, 08 Ноября 2012

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

    +135

    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
    int index = 0;
            this.item[index].SetDefaults("Mining Helmet");
            index++;
            this.item[index].SetDefaults("Piggy Bank");
            index++;
            this.item[index].SetDefaults("Iron Anvil");
            index++;
            this.item[index].SetDefaults("Copper Pickaxe");
            index++;
            this.item[index].SetDefaults("Copper Axe");
            index++;
            this.item[index].SetDefaults("Torch");
            index++;
            this.item[index].SetDefaults("Lesser Healing Potion");
            index++;
            ...

    Crazy_penguin, 08 Ноября 2012

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

    +111

    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
    // todo
    /// <summary>
    /// Генерация пароля из GUID
    /// </summary>
    /// <param name="guid">GUID</param>
    /// <returns>пароль</returns>
    public string PasswordByGuid(string guid)
    {
        return guid[33].ToString()
            + guid[28].ToString()
            + guid[2].ToString()
            + guid[10].ToString()
            + guid[21].ToString()
            + guid[15].ToString();
    }

    Коммерческий проект :)

    ddv_demon, 08 Ноября 2012

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

    +43

    1. 1
    2. 2
    3. 3
    4. 4
    public static function create(AdGroupVO $vo)
    {
        UtilLog::debug('FUCK');
        ...

    avixyu, 08 Ноября 2012

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