|
|
|
|
<?
//Соединяемся с БД
$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)
В таблице есть одно поле в котором все ряды заполнены. | |
|
|
|
|
|
|
|
для: White_Owl
(06.01.2008 в 21:35)
| | Это значит, что в запросе содержатся ошибки! | |
|
|
|
|
|
|
|
для: White_Owl
(06.01.2008 в 21:35)
| | Попробуй заменить на if(mysql_num_rows($res)<1 | |
|
|
|
|
|
|
|
для: 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` ..." | |
|
|
|
|
|
|
|
для: Unkind
(07.01.2008 в 01:49)
| | Ага оно самое, зарезервированное. Спасибо огромное ! | |
|
|
|