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

    +118

    1. 001
    2. 002
    3. 003
    4. 004
    5. 005
    6. 006
    7. 007
    8. 008
    9. 009
    10. 010
    11. 011
    12. 012
    13. 013
    14. 014
    15. 015
    16. 016
    17. 017
    18. 018
    19. 019
    20. 020
    21. 021
    22. 022
    23. 023
    24. 024
    25. 025
    26. 026
    27. 027
    28. 028
    29. 029
    30. 030
    31. 031
    32. 032
    33. 033
    34. 034
    35. 035
    36. 036
    37. 037
    38. 038
    39. 039
    40. 040
    41. 041
    42. 042
    43. 043
    44. 044
    45. 045
    46. 046
    47. 047
    48. 048
    49. 049
    50. 050
    51. 051
    52. 052
    53. 053
    54. 054
    55. 055
    56. 056
    57. 057
    58. 058
    59. 059
    60. 060
    61. 061
    62. 062
    63. 063
    64. 064
    65. 065
    66. 066
    67. 067
    68. 068
    69. 069
    70. 070
    71. 071
    72. 072
    73. 073
    74. 074
    75. 075
    76. 076
    77. 077
    78. 078
    79. 079
    80. 080
    81. 081
    82. 082
    83. 083
    84. 084
    85. 085
    86. 086
    87. 087
    88. 088
    89. 089
    90. 090
    91. 091
    92. 092
    93. 093
    94. 094
    95. 095
    96. 096
    97. 097
    98. 098
    99. 099
    100. 100
    <html>
    <head>
    <title>Выбор вводимого маршрута</title>
    
    </head>
    <BODY bgcolor=b9f7ac>
    <?php
    $db = mysql_connect("localhost", "root", "");
    mysql_select_db("Peoples",$db);
    $i=0;
    $knopkodel=0;
    
    if ($m==0)
    	{
    	$m=5;
    	}
    
    $m=$m;
    $t=$t+$m;
    $query_m="select * FROM Users";
    
    
    $result_m=mysql_query($query_m);
    if ($myrow_m = mysql_fetch_row($result_m))
    	{
    	
    	do
    		{
    		if ($i<$t and $i>$t-$m-1)
    			{
    			printf("%s: %s %s %s (%s) \n <br>", $i+1, $myrow_m[0], $myrow_m[1] , $myrow_m[2], $myrow_m[3]);
    			}
    		else
    			{
    			}
    		$i=$i+1;
    		}
    	while ($myrow_m = mysql_fetch_row($result_m));
    	}
    	
    
    
            printf("<Table border=0><tr><td><FORM ACTION=\"Test2.php\" METHOD=\"Post\">\n <INPUT TYPE=\"hidden\"  Name=\"t\" VALUE=\"%s\">\n  <INPUT TYPE=\"hidden\"  Name=\"m\" VALUE=\"%s\">\n <input type=\"Submit\" value=\"<<\">\n </FORM> </td>\n", $t-2*$m, $m);
    	
    	
    	//echo "$i <br>";
    	$kolichestvo = floor($i / $m);
    	//echo "$kolichestvo <br>";
    	if ($i-($kolichestvo*$m)>0)
    		{
    		$kolichestvo=$kolichestvo+1;
    		}
    	//echo "$kolichestvo";
    	do
    		{
    		printf("<td><FORM ACTION=\"Test2.php\" METHOD=\"post\">\n <INPUT TYPE=\"hidden\"  Name=\"t\" VALUE=\"%s\">\n  <INPUT TYPE=\"hidden\"  Name=\"m\" VALUE=\"%s\">\n <input type=\"Submit\"  value=\"%s\">\n </FORM> </td>\n", $knopkodel*$m, $m, $knopkodel+1);
    		$knopkodel=$knopkodel+1;
    		}
    	while ($knopkodel<$kolichestvo);
    	printf("<td><FORM ACTION=\"Test2.php\" METHOD=\"post\">\n <INPUT TYPE=\"hidden\"  Name=\"t\" VALUE=\"%s\">\n  <INPUT TYPE=\"hidden\"  Name=\"m\" VALUE=\"%s\">\n <input type=\"Submit\" value=\">>\">\n </FORM> </td> \n", $t, $m);
    	echo "</Table>";
    
    
    
    
    
    printf("<form action=\"Test2.php\" method=\"post\"> \n");
    printf ("<INPUT TYPE=\"Hidden\" NAME=\"t\" Value=\"%s\">\n", $t-$m);
    echo "<SELECT NAME=\"m\"> \n";
    echo "<OPTION selected Disabled>Количество отображаемых записей</OPTION>";
    printf("<OPTION Value=\"3\">3</OPTION> \n");
    printf("<OPTION Value=\"5\">5</OPTION> \n");
    printf("<OPTION Value=\"10\">10</OPTION> \n");
    printf("<OPTION Value=\"%s\">Показать все</OPTION> \n", $i);
    echo "</SELECT>\n";
    echo "<input type=\"submit\" value=\"ОК\">";
    echo "</form> \n";
    
    
    
    
    
    
    echo "<FORM ACTION=\"Test2.php\" METHOD=\"post\"> \n";
    echo "<INPUT TYPE=\"hidden\"  Name=\"f\" VALUE=\"1\"> \n";
    printf("<INPUT TYPE=\"hidden\"  Name=\"t\" VALUE=\"%s\"> \n", $t-$m);
    printf("<INPUT TYPE=\"hidden\"  Name=\"m\" VALUE=\"%s\"> \n", $m);
    printf("<INPUT TYPE=\"hidden\"  Name=\"kolichestvo\" VALUE=\"%s\"> \n", $kolichestvo-1);
    printf("<INPUT TYPE=\"hidden\"  Name=\"knopkodel\" VALUE=\"%s\"> \n", $knopkodel-1);
    printf("<input type=\"submit\"  value=\"Print\"> \n");
    echo "</FORM> \n";
    
    
    
    
    if ($t==0)
    {
    }
    else
    {

    Соискатель на работу пишет.

    Запостил: Vasiliy, 14 Сентября 2010

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

    • <BODY bgcolor=b9f7ac>
      поубивал бы
      Ответить
    • <deleted>
      Ответить
    • $m=$m;
      и вывод HTML через printf() - жесть...
      Ответить
    • это писец даже для пхпшника)
      Ответить
      • млядь, что значит даже!!!
        могу поспорить, что ты них...... не знаешь пыха.
        а если не секрет на чём таком элитном быдлокодишь?
        Ответить
        • >>млядь, что значит даже!!!
          это значит что среднестатистическая программа на PHP лучше этого говна, хотя в среднестатистической программе наверняка в ядре есть вызов mysql_error и таг <b>

          >>могу поспорить, что ты них...... не знаешь пыха.
          ну и зря) я на нем пять лет писал, правда это было давно.

          >>а если не секрет на чём таком элитном быдлокодишь?
          сейчас на жабе)
          Ответить
          • >>могу поспорить, что ты них...... не знаешь пыха.
            ну и зря) я на нем пять лет писал, правда это было давно.

            может тогда катила 3-я версия пыха

            сейчас как бы 5.3 и 5.2 и скоро 6.0 если на них код не писал - нефиг на язык гнать опираясь на то, что было в далёкие далёкие времена
            Ответить
            • p.s. любой, кто хорошо знает плюсы будет не меньше гнать на жабу ))))
              Ответить
              • У жабы много проблем, но у нее есть принцип "сделаем тяжелую программу, зато читаемую и расширяемую".

                У PHP такого принципа нет)
                Ответить
                • Ну, я долго программировал на Perl. PHP может быть в некоторых вещах даже более читаемый будет.
                  Но читаемость, имхо, по умолчанию зависит от автора. На питоне, с его принудительной красотой отступами тоже можно писать говно.
                  Ответить
                  • на перле можно в одну строку роман накатать.
                    пых читаемей за счет того, что не жалели букв и жалели таких красивых перловых возможностей
                    питон зато обходится без скобок

                    так, а че там руби?
                    Ответить
                    • по мне - синтаксис руби достаточно страшен ):
                      Ответить
                • да ну нах
                  я думал такие приципы есть не у языков а у програмеров и контор
                  Ответить
                  • тогда покажите мне проект на пыхе, который не был бы говном пожалкйста
                    Ответить
                    • http://www.doctrine-project.org/
                      http://framework.zend.com/

                      тоже ПХП прокты и не говно, хотя зенд местами попахивает

                      ну и проекты созданные на их основе вполне могут быть гуд

                      p.s. доктрина - так и вобще близка к жабовскому хибернейту
                      Ответить
            • тогда была 4я.

              А что у нас в пятерке? Может быть появилось нормальное collections api? Может быть типизация стала наконец или статической или динамической целиком?
              Может быть появилось logging api?
              Может быть исчезли глобальные переменные типа _GET?
              Может быть ошибки перестали валица в браузер?
              Может быть появилась возможность (без изъебов с fastcgi) не прекращать работу после каждого запроса? Когда нужно что-то делать в бекграунде, до сих пор используют крон? когда нужно кешировать что-то в памяти -- до сих пор используют memcached, сериализуя туда объекты?

              Все ведь по старому. Как было говном, так и есть. От того, что туда добавили autoload лучше нестало
              Ответить
              • На самые больные места давишь.
                Ответить
              • что хорошего в одном виде типизации я никак понять не могу ну можно объявлять переменные и указывать тип можно не указывать гибкости больше ИМХО
                logging api - берешь 2 не кревые руки 1 не пустую голову и уаля все у тебя есть

                Может быть исчезли глобальные переменные типа _GET? -- я тут вообще не понимаю они тебя чем смущают то ну есть ну да не хочешь не ешь

                Может быть ошибки перестали валица в браузер? - error_reporting (0); и не валятся

                Может быть появилась возможность (без изъебов с fastcgi) не прекращать работу после каждого запроса? - я использую cURL
                Когда нужно что-то делать в бекграунде, до сих пор используют крон? - Да используют Вспомни для чего пыху придумали нех делать с ней то для чего она не предназначена.

                Мем кеш не юзаю ничего сказать не могу.
                Ответить
                • а типизация и так имеет только один вид - статический

                  >объявлять переменные и указывать тип можно не указывать гибкости больше
                  ебал ее рука

                  тип можно не указывать и в статике, Хиндли и Милнер покажут тебе как.

                  >глобальные переменные
                  welcome to 70th

                  >не прекращать работу после каждого запроса? - я использую cURL
                  >cURL
                  wut?
                  Ответить
                • >>что хорошего в одном виде типизации
                  Что бы это понять -- надо взять средний проект на пару тысяч классов, въехать в него и поподдерживать его пару лет. Полазить в мануал что бы узнать "какие тут есть методы", поделать рефакторинг "rename method" методу с именем типа "getId" и тогда можно понять зачем нужна статическая типизация.

                  В питоне отсутствие ее частично компенсируется сильной культурой юнит-тестов, но в мире нет PHP проекта, покрытого тестами хотя бы на половину.

                  >>- я тут вообще не понимаю они тебя чем смущают
                  Чем смущают глобальные переменные -- спросите лучше учителей информатики, они обычно про такое рассказывают. Ну или погуглите на предмет статей 70х годов.

                  >> error_reporting (0); и не валятся
                  и куда они валяца? Во всех языка (даже в перле) есть концепция STDERR (потому что она есть во всех операционках) и только в пыхе ее нет.

                  >>я использую cURL
                  что?
                  как это связано?

                  >> Да используют Вспомни для чего пыху придумали нех делать с ней то для чего она не предназначена.
                  пыху придумали что бы делать страничку. Для этих целей он прекрасен. Делать сайты более чем из двух формочек на пыхе это пзц.

                  >>Мем кеш не юзаю ничего сказать не могу.
                  да, на каждый заход пользователя надо делать 30 запросов в базу, правда?
                  Ответить
                  • буду не в попад
                    >>я использую cURL
                    что?
                    как это связано?

                    перед тем как выгрузить код запускаю Вчера подсказали замутил тестю пока работает

                    ignore_user_abort(1);

                    //...................

                    //новый запуск курлом файла

                    // при запуске курлом делаем curl_setopt($ch, CURLOPT_TIMEOUT, 1);
                    Ответить
                  • да, на каждый заход пользователя надо делать 30 запросов в базу, правда?
                    не обязательно я генерю страницы и скалдываю их виде файлов хтмл устревают генерю новые.
                    Мемкеш освоить хочу.
                    Ответить
                    • Мы с Вами на разных языках говорим.

                      Вот представьте себе, что к Вам приходит программист из мира, где нет CGI. И баз данных тоже нет.

                      И говорит: а я сделал приложение. Оно слушает 80й порт, обрабатывает запросы, генерирует html, а данные хранит в собственном формате на диске.

                      Вы удивляетесь: так есть же веб-сервер, есть же базы данных, зачем так сложно?

                      Вот примерно такие же у меня ощущения от php после джавы и дотнета.

                      Если у меня есть какой-то объект с данными, которые я считал пол часа -- мне не надо "генерировать странички", мне не надо юзать мемкешд, я просто храню его в памяти и отдаю пользователям.

                      Если мне надо в фоне что-то отсчитать -- я просто создаю поток (как сделал бы в декстопном приложении) и там делаю, что мне надо.

                      Если я хочу писать в лог -- я пишу в log4j, и админ сам может решить куда писать логи (в почту, текстовый файл или консоль).

                      У меня есть единообразный API для любой БД, у меня есть куча видов коллекций, основанных на разных структурах данных. Есть система для юнит-тестирования.
                      ай)
                      Ответить
                      • Надо переходить с пыхи......
                        нв джаву к примеру. Есть какаянибудь кинга про Java для нубов с опытом
                        Ответить
                        • Обычно все хвалят Thinking in Java (в русском варианте "философия джава").
                          После нее вполне можно читать Джошуа Блоха "effective java"

                          А потом уже кто что читает)
                          Имхо полезно читать java language specification и java virtual machine specification -- обе книжки бесплатные, и несмотря на свои сухие названия вполне читаемы.

                          Про многие J2EE вещи (например про сервлеты, jsp, jstl и прочую веб-кухню) мне хватает официальных спецификаций, но про все это тоже книги (обычно хорошие книги издательства ориелли).

                          Ну а уж про альтернативные технологии обычно можно читать гайды на их сайтах (у спринга хороший гайд например)
                          Ответить
                  • и куда они валяца? Во всех языка (даже в перле) есть концепция STDERR (потому что она есть во всех операционках) и только в пыхе ее нет.

                    есть опция в php.ini display_error вот если её поставить off то пишется только лог.
                    Ответить
                    • лол, в какой лог?
                      Ответить
                      • Ты ни паверишь!
                        php_value error_log "/абсолютный путь до лога/public_html/log/error.log"
                        Ну или клади лог куда ты хочешь.
                        Ответить
              • а вот это либо конфигуряеццо, либо юзаюццо фреймворки
                Ответить
              • >Когда нужно что-то делать в бекграунде, до сих пор используют крон?
                ВНЕАЗПНО!
                echo '<meta http-equiv="refresh" content="13" />';
                    // Отличный костыль. CRON НЕ НУЖЕН

                Серьезно, для PHP-скриптов, которые должны непрерывно что-то делать (или с интервалом), допустим, что-то парсить и писать в файл - это хороший выход.
                Говнокод, но все же.
                Ответить
                • ага) а аобъекты вы серализнули в сессию

                  и вообще: тут внезапно браузер закрыли
                  Ответить
                  • Так это открыто у того, кому нужен этот скрипт.
                    В его интересах браузер не закрывать :)

                    Если что надо запомнить - пихаю в куки, лол.
                    Пару раз так обходился без крона.
                    Страшнейший говнокод, но для себя можно и говнеца :)
                    Ответить
                    • >>Так это открыто у того, кому нужен этот скрипт.
                      :))))))))))))
                      Допустим, после добавления каких-то данных Вам нужно переиндексировать OLAP представление базы. Это занимает минут 20. Вы заставите пользователя ждать?

                      >>Если что надо запомнить - пихаю в куки, лол.
                      А если там дерево из объектов размеров в 5 мегабайт, лол?

                      >>Страшнейший говнокод, но для себя можно и говнеца :)

                      Вот, Вам тоже отвечу:
                      http://govnokod.ru/4251#comment47978
                      Ответить
                      • Ну с такими задачами я не сталкивался.
                        А для "спарсить файл раз в минуту и проверить на изменения" это сойдет :)

                        Я же не говорю заменять html-тегом крон, это же глупость.
                        Ответить
    • printf("%s: %s %s %s (%s) \n <br>", вау.
      Ответить
    • Взяли?
      Ответить
      • в мелкософт. там как раз кодомартышки нужны для говнирования проприетарного кода
        Ответить
        • в мелкософте есть очень разные люди.
          кодомартышки пишут на vbs, а на плюсах не кодомартышки имо) и на с# невсегда они
          Ответить
          • просто их больше. за счет того, что их вообще много, а мелкомягкий не такой уж мелкий, и уж отнюдь не пушистый
            Ответить
      • Да вроде нет..... Но указали на явные косяки. И дали еще одно задание ...... Исправится может и возьмут. Я б так его в рудники.....
        Ответить
        • думаю за такой короткий срок не исправишься. Я бы не взял, потому что у него косяки будут сыпаться - и че, ходить за ним какашки подбирать?
          Ответить
    • > printf("<form action=\"Test2.php\" method=\"post\"> \n");
      > printf ("<INPUT TYPE=\"Hidden\" NAME=\"t\" Value=\"%s\">\n", $t-$m);
      у него капс сам то включается, то выключается
      Ответить
    • Как вам особо шикарная конструкция
      if ($m==0)
      {
      $m=5;
      }

      $m=$m;


      или же вот
      if ($i<$t and $i>$t-$m-1)
      Ответить
    • Брать.
      Живым брать!
      Ответить
    • Надеюсь, его приняли?
      Ответить
    • а если б не было слов про соискателя - начали бы минусовать. ))))
      Ответить

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