Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Вывод с базы данных. Какая-то ошибка.

Сообщения:  [1-10]   [11-17] 

 
 автор: Trianon   (10.09.2009 в 03:06)   письмо автору
 
   для: Рома   (10.09.2009 в 02:47)
 

ну так else то не было,
а в if был только while

  Ответить  
 
 автор: Trianon   (10.09.2009 в 03:04)   письмо автору
 
   для: Mookapek   (10.09.2009 в 02:45)
 

потому что переменная $query неопределена в этой точке.
но Вам должен был сообщить об этом не я и не Рома. А php.

  Ответить  
 
 автор: Рома   (10.09.2009 в 02:51)   письмо автору
 
   для: Mookapek   (10.09.2009 в 02:09)
 

невнимательность!

>

>$quary = "SELECT id FROM base";
>$res = mysql_query($query);
>if(!$res) exit("База данных недоступна.");
>
>if(mysql_num_rows($res) > 0)
>{
> while($result = mysql_fetch_array($res))
> {
>  echo $result['id'];
> }
>}
>

>По идее данный код должен вывести значения поля id, так как соответствующие записи в базе существуют. Однако браузер ничего не выводит, хотя тело цикла выполняется точно один раз. Почему-то...
>В чем может быть проблема?

  Ответить  
 
 автор: Рома   (10.09.2009 в 02:47)   письмо автору
 
   для: Trianon   (10.09.2009 в 02:16)
 

хм. а почему это лишним? if(!res) - говорит о том, что запрос к базе был успешным или наоборот. а вот вернул он строки или нет и проверяется if(mysql_num_rows()).

тогда
if(mysql_num_rows($res)>0)
 {
             вывод строк
 }
else 
 {
         echo '    в данном разделе нет статей. ваша будет первой.  ' ;
 }


разве так не логично? или есть более оригинальный способ?

  Ответить  
 
 автор: Mookapek   (10.09.2009 в 02:45)   письмо автору
 
   для: Trianon   (10.09.2009 в 02:41)
 

На счет недостатка опыта - здесь то я согласен.
А вот можете объяснить, почему именно строка $res = mysql_query($query); должна быть отмечена как ошибка?

  Ответить  
 
 автор: Mookapek   (10.09.2009 в 02:42)   письмо автору
 
   для: Mookapek   (10.09.2009 в 02:09)
 

$res = mysql_query("SELECT id FROM base"); - сделал так и все заработало. Почему? - не знаю.

  Ответить  
 
 автор: Trianon   (10.09.2009 в 02:41)   письмо автору
 
   для: Mookapek   (10.09.2009 в 02:34)
 

Полагаю, что у Вас просто недостаточно опыта, чтобы определить, касается диагностика данной темы или нет.
И в этой ситуации ошибки следует устранять все.

В частности, ошибкой явно должна быть отмечена строка $res = mysql_query($query);

  Ответить  
 
 автор: Mookapek   (10.09.2009 в 02:34)   письмо автору
 
   для: Trianon   (10.09.2009 в 02:27)
 

Все-таки не выдается никаких предупреждений и ошибок, касающихся данной темы. Странно, что цикл один раз выполняется, тогда как записей больше, чем одна.

  Ответить  
 
 автор: Mookapek   (10.09.2009 в 02:30)   письмо автору
 
   для: Trianon   (10.09.2009 в 02:26)
 

Ну в подтверждение работы error_reporting могу сказать, что оно вывело какие-то предупреждения, не касающиеся вывода из базы.

  Ответить  
 
 автор: Trianon   (10.09.2009 в 02:27)   письмо автору
 
   для: Mookapek   (10.09.2009 в 02:26)
 

Еще раз.
Не могло не выдать хотя бы предупреждения.

  Ответить  

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования