- 1
- 2
- 3
while ($char_list = mysql_fetch_array($char_list_query,MYSQL_ASSOC) or die(mysql_error())) {
echo "<option>{$char_list['name']}</option>";
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+168.5
while ($char_list = mysql_fetch_array($char_list_query,MYSQL_ASSOC) or die(mysql_error())) {
echo "<option>{$char_list['name']}</option>";
}
guest 11.01.2010 15:03 # 0
guest 11.01.2010 15:11 # +5
guest 11.01.2010 19:12 # +2
POPSuL 11.01.2010 20:15 # 0
guest 12.01.2010 15:46 # 0
cheef 13.01.2010 13:15 # −2
ivmaroz 13.01.2010 14:11 # 0
cheef 13.01.2010 16:08 # 0
ivmaroz 13.01.2010 16:42 # +1
Других вариантов я у Вас не увидел
guest 14.01.2010 18:33 # 0
ivmaroz 14.01.2010 21:49 # −1
Подсказка: die сработает, когда больше не будет записей, т.е. левая половина будет false. PHP ничего не останется как проверить правую часть, т.е. выполнить die
danxill 16.01.2010 14:59 # 0
ivmaroz 17.01.2010 19:38 # −2
Заодно почитайте, что возвращает mysql_fetch_array когда записи заканчиваются
По вашему, цикл while никогда не может быть завершен (не в данном случае, а без die), так как в условии всегда будет логическое true
danxill 18.01.2010 11:02 # 0
по поводу mysql_fetch_array():
Смотрим что она возвращает из мануала по рнр и радуемся!
---------------------------------------------
Описание
array mysql_fetch_array ( resource $result [, int $result_type ] )
Возвращает массив с обработанным рядом результата запроса, или FALSE, если рядов больше нет.
mysql_fetch_array() расширенная
ivmaroz 18.01.2010 12:39 # 0
Я что-то не вижу в этих строках, где вы говорите что die не нужен. Исходя из последнего предложения, die сработает только тогда когда будет не правильный запрос, а когда строки закончатся, он не сработает
ivmaroz 18.01.2010 12:52 # 0
Я, скорее, не точно выразился, так как die сработает только тогда, когда выберет все записи или их не будет. Но в данном цикле die сработает всегда
ivmaroz 18.01.2010 12:55 # 0
> die() сработает в том случае если mysql_fetch_array() не сможет нормально выполнить запрос
А потом меня же тыкаете в мануал и показываете когда же mysql_fetch_array вернет false. Я и до Вас это прекрасно знал
ivmaroz 17.01.2010 19:43 # 0
danxill 18.01.2010 10:58 # 0
danxill 18.01.2010 11:04 # 0
cheef 18.01.2010 11:34 # 0
danxill 18.01.2010 11:48 # 0
cheef 18.01.2010 11:51 # 0
danxill 18.01.2010 11:55 # 0
cheef 18.01.2010 11:58 # 0
danxill 18.01.2010 11:59 # −1
ivmaroz 18.01.2010 18:24 # 0
Но при условии, что в функция отработает без ошибок
danxill 22.01.2010 06:11 # 0
Я решил на всякий случай проверить на локалке. в первый раз вроде все норм получилось)
Не понял юмора и сделал проверку, все дело в том что функция die при заканчивание сценария выдавала белый экран, при этом до этого все записи выводились)