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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: убрать вывод ошибки
 
 автор: liberty   (01.04.2013 в 04:49)   письмо автору
 
 

ошибка
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in .... on line 213
вот эта строка

if (mysql_num_rows($result333) > 0)

код ниже
<?php 
$result333 
mysql_query("SELECT * FROM school WHERE id_rono='" mysql_real_escape_string($id_rono) . "' 
order by title ASC LIMIT 
$start$num"$db);

if (
mysql_num_rows($result333) > 0)
{
$myrow333 mysql_fetch_array($result333);
do
{
printf ("<h3 class='ege'>$x. &nbsp;&nbsp;<a href='school_post.php?id_school=%s'>%s</a></h3><br>
"
$myrow333["id_school"], $myrow333["title"]);
$x $x 1;
}
while (
$myrow333 mysql_fetch_array($result333));
?>

если $result333 > 0 то ошибки нет.

  Ответить  
 
 автор: Jovidon   (01.04.2013 в 10:32)   письмо автору
 
   для: liberty   (01.04.2013 в 04:49)
 

Зделай вот так и резултат пакажи

<?php
$sql 
"SELECT * 
        FROM school 
        WHERE id_rono='" 
mysql_real_escape_string($id_rono) . "'  
        ORDER BY title ASC 
        LIMIT 
$start$num";
$result333 mysql_query($sql) or exit($sql);
?>

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 11:13)   письмо автору
 
   для: liberty   (01.04.2013 в 04:49)
 

Это не ошибка, а предупреждение, что запрос ничего не вернул. Что бы подавить вывод предупреждений - ошибок ставьте @

if (@mysql_num_rows($result333) > 0)

  Ответить  
 
 автор: confirm   (01.04.2013 в 11:17)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 11:13)
 

Ой так ли надо поступать?

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 11:30)   письмо автору
 
   для: confirm   (01.04.2013 в 11:17)
 

смотря что ему нужно получить, вариантов много, можно ini_set('display_errors',0). вопрос был убрать вывод ошибки в конкретной строке - я на него и ответил

  Ответить  
 
 автор: confirm   (01.04.2013 в 11:39)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 11:30)
 

То что вы советуете, это значит плюнуть на ошибку, которую вернул предыдущий запрос. Поэтому ваш ответ кроме вреда ничего не принесет.

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 11:48)   письмо автору
 
   для: confirm   (01.04.2013 в 11:39)
 

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

  Ответить  
 
 автор: confirm   (01.04.2013 в 12:04)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 11:48)
 

Вы лично уже не раз автору топика расписывали в других его темах.

Беда в том, что он не думает над ответами для него, и насколько можно понять по его вопросам, совсем не собирается изучать предмет, в которым пытается что-то сделать. Он просто копирует то, что советуют, совсем не думая о том, что это может быть вредно.
Я всего-то раз-два отвечал ему, но после его "жалобы", из которой ясно, что совет ему изучать предмет он воспринимает как "нравоучения по жизни", у меня нет никакого желания что либо ему отвечать, смысла не вижу.

Ну как подобные ошибки обнаружить
http://www.php.net/manual/ru/function.mysql-query.php - объяснять как на самом деле необходимо поступать или нет?

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 12:36)   письмо автору
 
   для: confirm   (01.04.2013 в 12:04)
 

На конкретный вопрос я конкретно и ответил - топик "убрать вывод ошибки", а не "найти(исправить) ошибку" называется.

  Ответить  
 
 автор: confirm   (01.04.2013 в 12:43)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 12:36)
 

Вы на вопрос, сущность проблемы которого автор не понимает, даете совет еще более чреватый последствиями. А если подумать, надо ли так поступать - советовать что-то не думая?

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 12:51)   письмо автору
 
   для: confirm   (01.04.2013 в 12:43)
 

Ну может автор наконец то думать начнет :) или хотя бы точно вопросы формулировать. Желания научиться я у него что то не замечаю, если ему лень почитать учебник для начала.

  Ответить  
 
 автор: confirm   (01.04.2013 в 12:57)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 12:51)
 

А что формулировать, если сообщение указывает на причину ошибки?
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in ....
Ежу понятно, что предыдущий запрос вернул ошибку, а не ресурс, и какая же mysql_num_rows() может быть после этого? Какой прок выполнять эту функцию любовно прикрыв ее собакой?

Он да, не понимает, и думаю, что не старается этого делать, но какова же ваша при этом логика рассуждения, если вы понимаете суть проблемы?

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 13:10)   письмо автору
 
   для: confirm   (01.04.2013 в 12:57)
 

Показать одну из возможностей запрета вывода ошибки. Может автора вполне устраивает работа скрипта и он не собирается всякие доп проверки устанавливать, а только его раздражает появление на экране этой ошибки-предупреждения и ему не нужен вывод информации, что такого ИД в базе нет или значения лимит в запросе за пределы выходят(скорей всего у него постраничная навигация хромает в данном случае) и т.д.?

  Ответить  
 
 автор: confirm   (01.04.2013 в 13:13)   письмо автору
 
   для: Lotanaen   (01.04.2013 в 13:10)
 

@ нужно применять там, где от нее действительно будет польза. А вот в данном вопросе, это вред, подумайте сами почему.

  Ответить  
 
 автор: Lotanaen   (01.04.2013 в 13:19)   письмо автору
 
   для: confirm   (01.04.2013 в 13:13)
 

ну вред, так вред - я и не спорил по этому поводу с вами

  Ответить  
 
 автор: psychomc   (01.04.2013 в 11:27)   письмо автору
 
   для: liberty   (01.04.2013 в 04:49)
 

перед
<?php
if (mysql_num_rows($result333) > 0)

добавьте
<?php
if (!$result333) echo mysql_error();

поймете в чем проблема. и не пользуйтесь вредными советами про @

p.s проблема скорее всего в том, что у вас параметры, подставляемые в лимит не проходят должную проверку

  Ответить  
Rambler's Top100
вверх

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