"PHP" / Говнокод #4582 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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 ajaxGetProcesses()
{
	$db = $this->site->DB;

	$res = array();

	$_POST['title'] = iconv('UTF-8', 'WINDOWS-1251', $_POST['title']);

	if (!empty($_POST['title']))
	{
		$query = 'SELECT * FROM '.$this->site->prefix_db.'_processes_alters WHERE `title` LIKE \''.addcslashes($_POST['title'], '\'').'%\' LIMIT 10';
		$db->query($query);
		while ($i = $db->fetch())
		{
			$res[] = '"'.addcslashes($i['title'], '"').'"';
		}
	}
	// кто ж виноват, что в середине 2010 года все еще приходится писать на пхп4 :-(
	// json отсутствует, библиотеку подключать - жопа - не та сложность вывода
	echo '['.implode(', ', $res).']';
	exit();
}

Запостил: netrain netrain, (Updated )

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

  • А современный пхп-код построен исключительно из оупенсорсовских кирпичей, прикрученных друг к дружке или "абы как" или "как-нибудь эдак"
    Ответить
  • школолошный автор реальне думает, что на пятом пыхе он будет писать лучше)))))
    Ответить
      • в этом коде смешаны знания об http, sql и кодировках. от переписки на пятый он не изменится)
        потому-то он и дерьмо) впрочем, в мире пыхомакак так и принято
        Ответить
        • От переписки на перл он тоже лучше не станет. Но, боюсь, что стать хуже может...
          Ответить
          • наврядли.
            потому что для переписки на перл прийдется нанимать программиста, а макаку -- увольнять.
            это благотворно скажется на качестве кода
            Ответить
            • А толку шило на мыло менять? Перловская макака - это конечно звучит гордо.
              Вот говнокод сайт на php, тебе не тошно на нем сидеть, не воняет?
              Ответить
              • перловых макак почти не бывает: макаке не просто осилить мутный перл.

                мне не тошно, я же тут юзер
                сырцы не правлю
                Ответить
            • 1. программист на перле напишет такой перл(пардон за тавтологию), что, даже не будучи говнокодом, его будет трудно читать - это особенность перла со всеми его $_ и s///
              2. может быть, сейчас времена изменились, но когда-то выставлялось в заслуги пыху то, что он работает как модуль апача, тогда как перл на каждый запрос порождается новый процесс

              если уж задуматься, на чем рисовать веб-аппликацию, то есть еще всякие java и его производные, в т.ч. фреймворки, groovy c его grails, и, конечно, asp.net
              Ответить
              • Верно подмечено. Более того, какой двин на перле ни возьми, говнокод хуже php'шного.
                Ответить
                • товарищ, не ешьте на ночь = )

                  вот только про пхп молчите. Я вообще не видел на нем хорошего кода - если проект больше одной страницы. Сам программирую, и то, пока не спрятал большинство костылей во фрейворк, жутко страдал анально.
                  Ответить
                  • В том-то и сложность, что большой есть соблазн писать на ПХП Гавнокод. Писать на ПХП скрипты устойчивые к ошибкам, оптимизированные и т.д. и т.п. довольно непростое дело. Самодисциплина нужна определённая, тогда и будет хороший код! Facebook и vkontakte - наглядный пример профессиональных ПХП-шников!
                    Ответить
                    • > Facebook и vkontakte - наглядный пример профессиональных ПХП-шников!

                      Что-то я сомневаюсь. Вы видели исходники?
                      Ответить
                      • Исходники - нет, но работает всё превосходно и относительно быстро!
                        Ответить
                        • > но работает всё превосходно и относительно быстро!
                          потому что серваки отличные + всякие кешеры, ускорители, к тому же у фейсбука пхп-код скомпилен
                          Ответить
                          • да ладно, у них ферма с десятками тысяч серверов, вот и шевелится оно
                            Ответить
    • можно подумать что русские комментарии в кои лучше))

      хотя хуже всего utf 8, ибо 2 байта будет для русских букв
      Ответить
      • utf8 хотя бы частично решает проблему русских крякозябл. мало? есть и utf16, и unicode.

        вообще я не только про однобайтовость, но еще и про то, почему WINDOWS-1251,а не ISO-8859-5 какой-нибудь
        Ответить
        • Почему частично?

          Конец фразы "и unicode" дискредитировал.
          Я минуснул за это, прошу не обижаться.
          (unicode - стандарт кодирования, utf8 - одна из его реализаций).
          Ответить
  • вот строка
    $db = $this->site->DB;

    прям глаз режет. бля, ну почему не ссылка, зачем копировать объект....
    Ответить
    • Потому что там так круто построен класс. Если просто передавать ссылку - все грохнется нафиг. Ибо в объекте же и хранится результат выполнения запросов.
      Т. е. код
      $query = 'SELECT * FROM `table`';
      $db->query($query);
      while ($i = $db->fetch())
      {
      $query2 = 'SELECT * FROM `table2` WHERE `somefield` = '.$i['somefield'];
      $db->query($query2);
      while ($i2 = $db->fetch())
      {
      // something
      }
      }

      работать не будет, ибо результат выборки перепишется на первой же итерации внешнего цикла. А таких мест в CMS достаточно, чтобы не браться за ее переделку.
      Ответить
      • это придумано для говна типа:
        <?php
        $_POST['title'] = 't1';
        include('page.php');
        $_POST['title'] = 't2';
        include('page.php');

        page.php:
        <?php
        echo $_POST['title']
        Ответить
        • каждый думает в меру своей испорченности.
          Как будто от использования
          $title = $_POST['title'];
          include 'page.php';
          $title = 't2';
          include 'page.php';


          page.php

          echo $title;


          что-то изменится.
          Ответить
      • Глобальные массивы "по логике" должны быть неизменными? новые умы, новые идеи:)
        Ответить
        • ну как бы, если подумать над этим вопросом головой, а не жопой =)
          Ответить
        • суть не в том что массивы глобальные, а в том, что они формируются связкой веб-клиента и веб-сервера извне скрипта и без его участия, и из-за того, что могут быть использованы в разных участках кода, на мой взгляд было бы логично их защитить от несанкционированного редактирования, если и не на уровне языка, то хотя бы на уровне библиотек.
          Ответить
          • Да. Глобальные массивы они такие...
            Хорошо хоть нет глобальных ссылок...
            Ответить
          • В этом что-то есть. Кстати, иногда нечто подобное используется.
            Ответить
            • если это прописать в auto_prepend_file то можно собрать много лулзов
              Ответить
              • Например, при переходе на php3, можно один раз прописать что-то такое:
                $_SERVER = $HTTP_SERVER_VARS;
                И не мучиться 🙂
                Ответить

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

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8