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

Форум MySQL

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

 

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

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

тема: Ошибка mysql_num_rows

Сообщения:  [1-5] 

 
 автор: White_Owl   (07.01.2008 в 05:15)   письмо автору
 
   для: Unkind   (07.01.2008 в 01:49)
 

Ага оно самое, зарезервированное. Спасибо огромное !

   
 
 автор: Unkind   (07.01.2008 в 01:49)   письмо автору
 
   для: rachkov   (07.01.2008 в 01:44)
 

> Попробуй заменить на if(mysql_num_rows($res)<1
Чушь

> "SELECT * FROM index WHERE login=' ".$_POST['login']." 'AND passw=' ".$_POST['passw']." ' "
Во-первых зачем пробелы около литеральных констант тут: ' ".$_POST['login']." ' и тут: ' ".$_POST['passw']." ' ? Это не может вызвать такую ошибку (Warning), но это неверно. Всегда будет "Введены не верные логин или пароль". И нехорошо, что нет пробела перед "AND".

А вот ошибка судя по всему вызвана тем, что "index" - зарезервированное слово, т.е.
запрос должен быть "SELECT * FROM `index` ..."

   
 
 автор: rachkov   (07.01.2008 в 01:44)   письмо автору
 
   для: White_Owl   (06.01.2008 в 21:35)
 

Попробуй заменить на if(mysql_num_rows($res)<1

   
 
 автор: ddhvvn   (06.01.2008 в 22:39)   письмо автору
 
   для: White_Owl   (06.01.2008 в 21:35)
 

Это значит, что в запросе содержатся ошибки!

   
 
 автор: White_Owl   (06.01.2008 в 21:35)   письмо автору
 
 


<?
//Соединяемся с БД
$db mysql_connect("localhost""name""pasword");
mysql_select_db("users",$db);

//проверяем есть ли пользователь с таким login'ом и passwordом
    
$res=mysql_query ("SELECT * FROM index WHERE login=' ".$_POST['login']." 'AND passw=' ".$_POST['passw']." ' "$db);
    
    if(
mysql_num_rows($res)!=1){    
    
    
//такого пользователя нет
    
            
echo "Введены не верные логин или пароль";
    }
    else{    
    
//пользователь найден
    
echo "получилось";
    }
    
mysql_close(); 
?>



Проблема в том, что при выполнении этого, на экран выводится:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in z:\home\zadanie\www\login.php on line 13

Линия 13 это if(mysql_num_rows($res)!=1)

В таблице есть одно поле в котором все ряды заполнены.

   

Сообщения:  [1-5] 

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

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