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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!isset($_SERVER['DOCUMENT_ROOT'])) {
    	if (isset($_SERVER['SCRIPT_FILENAME'])) {
    		$_SERVER['DOCUMENT_ROOT'] = str_replace('\\', '/', substr($_SERVER['SCRIPT_FILENAME'], 0, 0 - strlen($_SERVER['PHP_SELF'])));
    	}
    }

    Никогда не слышали о '&&' или 'and'?
    https://github.com/opencart/opencart/blob/master/upload/system/startup.php#L15-L19

    Интересное замечание: классы Controller и Model в OpenCart имеет один и тот же код.

    Запостил: volter9, 06 Ноября 2014

    Комментарии (43) RSS

    • Какой кошмар! Зачем опртить DOCUMENT_ROOT?
      Ответить
      • Привет. Где пропадал?
        Ответить
        • пил
          Ответить
          • Багминота тоже зови. Скучно без вас.
            Ответить
            • и вебкилла
              Ответить
              • Тихо, тихо. Не поминайте всуе... А не то ещё заставит чистить куки браузером.
                Ответить
                • Кстати
                  http://tinyurl.com/ncfhqhc
                  Ответить
                  • Вот так лучше будет: http://lurkmore.to/Обсуждение:Govnokod.ru
                    Ответить
                    • Ответить
                      • опять поскаль?
                        Ответить
                        • Ньюфаги не умеют в турбо-подсветку в стоке.
                          var a; // oneliner
                          begin
                                 func(1); { а я коммент }
                          end
                          Ответить
                          • стоп

                            а какого типа a?
                            ------
                            Я паскаль последний раз активно юзал в 1998м году. Хорошо что до сих пор люди на нём что-то пишут.
                            Ответить
                            • Комментариев паскалика.

                              > Хорошо что до сих пор люди на нём что-то пишут.
                              Даже Тарас отрёкся, и принял в еретическое крестоблядство.
                              Ответить
                              • Но кто-то же постит свежые говнокоды на паскале:)

                                На самом деле круто конечно было писать змейку на турбопаскале через драйвер egavga.bgi
                                Ответить
                                • У меня трупопаскалевская змейка состояла из шариков, и рулилась не по 90 градусов, а более точно :3

                                  (Из управления были только стрелки влево-вправо, которые вращали вектор движения башки).
                                  Ответить
                                  • А у меня из квадратиков и по 90:)
                                    Причем квадратики даже были не спрайтами, а рисовались через процедуру типа rectangle, в общем средствами 2D графики.

                                    А еще у меня была псевдографичная игрушка про рожу (аски символ за номером 1).
                                    Ответить
                                    • > А еще у меня была псевдографичная игрушка про рожу
                                      Так вот кто написал dwarf fortress...
                                      Ответить
                                      • Там было несколько рож

                                        После DF - "я могу читать матрицу"
                                        Ответить
                                      • Собственно рогалик я и пытался тогда написать:)
                                        Ответить
                                    • Портанул своё говнецо на ЖС: http://bormand.tk/snake/

                                      Можете гамать ;)
                                      Ответить
                                      • P.S. Страничка для обсирания: http://govnokod.ru/17080
                                        Ответить
                                      • >> function main()
                                        ха-ха, толстый сишный бекграунд заметен даже в JS:)
                                        Ответить
                          • Странно. ГК же вроде бы даже комментарии в русском языке спокойно подсвечивает.
                            Х_йни х_йни! ( положи каши )

                            Впрочем, паскаль могли выпилить из-за старости и ненужности.
                            Ответить
                            • Мне больше нравится что тут подсветка есть, а в стоке -- нет.

                              Мне кажется что это говорит о какой-то гнили в архитектуре. Не должно там и тут работать по-разному!
                              Ответить
                              • >Мне кажется что это говорит о какой-то гнили в архитектуре. Не должно там и тут работать по-разному!
                                Во. Об этом и речь. Не зря же сайт назвали говнокодом.
                                Ответить
                    • Прочитал обсуждение, но так и не понял почему выпилили...
                      Ответить
                      • Потому что об этом сайте знают 10 анонимусов а наш внутренний цирк никому не интересен. кстати Старпер вернулся?
                        Ответить
                        • Он где-то рядом. Комментарии не пишет, но присутствие его ощущается.
                          Ещё недавно кто-то выложил пароли от его учёток с обновлёнными паролями для Стертора и брутушафенса. У брутушафенса новый пароль достаточно сложный, чтобы ломать. Т.е. либо ГК скомпрометирован, либо он сам выложил.
                          Ответить
                      • Потому что цугундер.
                        Ответить
    • Что касается замечания ОПа:
      Когда деревья были молодыми, а я, лично, ходил пешком под стол - тоже думал по похожему шаблону: "Узнал новую фичу - повысил уровень, - и все остальные, кто этого ещё не знает, конечно, являются зелёными дрищами, и предвзято - лохами".
      С другой стороны, при подобной нотации кода, порог вхождения стороннего работника несколько повышается. По крайней мере, время этого самого вхождения...
      (ну это замечание, естественно, довольно утрировано, но общее направление определяет)
      Ответить
      • Тоесть Вы хотите сказать что авторы opencart просто не знают про &&, но это не повод считать их лохами, верно?

        Да и использование && повышает уровень вхождения в код, потому как программисту придется знать что такое &&, а это, в общем, не все знают.
        Ответить
        • Здесь речь больше не столько про ойпенкарт, сколько про импульсивность автора поста в комментарии к оному.
          И... Эмм... Вы хотите связать высокий порог вхождения - с качеством? К сожалению, это не всегда так. К сожалению.
          Ответить
          • Высокий порог Вы первый упомянули)

            Порог это НЕКОТОРАЯ защита от ОЧЕНЬ плохих программистов, но эта защита довольно слабая, и сама по себе создает проблемы.
            Ответить
      • Я не называю разработчиков OpenCart'a лохами. Может быть это просто был... один зимний вечер. За окном дул холодный мороз. Казалось, что зима никогда не закончится. Разрабротчик сидел за экраном компьтера от которого исходил свет по всей комнате. Он туго сидел и смотрел на экран, думаю от том что бы улучшить в исходном коде. Тоска заполняла его сердце, и вот он решил написать два унылых условия, вместо одного с логическим оператором. Может быть оно как нибудь принесет радость и смех другим разработчикам...

        ~~~

        В общем, я хотел сказать что человек просто не заметил того как написал два if'а вместо '&&' или 'and'.
        Ответить
        • >> дул холодный мороз.
          Ну вот Вы тоже кое-чего незаметили:)
          Ответить
          • Ну вот, спалили :)

            ЗЫ: > думаю от том что бы улучшить в исходном коде
            Даже это не заметил (
            Ответить
        • Ой, ой, что-то мне это вдруг напомнило: http://govnokod.ru/6810
          Ответить
    • венда детектед
      Ответить
    • надо уже организовывать клуб охуевающих от опенкарта

      ---

      я вам потом еще S2 принесу (язык программирования для шаблонов livejournal. нет, вы не ослышались, именно ЯП, а не кастомный шаблонизатор), вы охуеете
      Ответить
      • Мартовский снимок или есть что-нибудь посвежее от инсайдеров?
        Ответить
        • Не, я не про внутренности языка, я про то, как на нем писать. НЕТ, ЮЗЕР, ТЫ НЕ МОЖЕШЬ ПРОВЕРИТЬ ЭТО НА НУЛЛ! ЭТО СТАНДАРТНЫЙ ТИП! ДА, ОН НУЛЛ, НО ПРОВЕРИТЬ ТЫ НЕ МОЖЕШЬ! ТЫ МЕДЛЕННО КОМПИЛИШЬ СВОЙ ШАБЛОН! Я НЕЖНО ВЫДАЮ ТЕБЕ ОШИБКУ В ЕДИНСТВЕННОМ СУЩЕСТВУЮЩЕМ ВЕБ-РЕДАКТОРЕ!
          Ответить
          • Вообще если кто-то собирается придумать новый язык программирования "для веба" то почти наверняка получится дерьмо: Parser, PHP итд.
            Ответить

    Добавить комментарий