Yan
Новичок
Добрый день! Пишу обработчик для формы, в которую пользователь вносит логин, пароль. Создаю запрос в БД для проверки существующего пароля, если такого нет, то вносим новые данные, все работает, запрос выглядит так:
Далее писал условие и если пароль совпадал, то данные не вносились, все работает ОК.
Но нужно еще проверить существует ли в базе такой логин (в БД поле name) и пароль, написал такую строку:
Но все это начало работать некорректно, потом я решил сделать только проверку логина и написал:
Все дальнейшие условия начали игнорироваться, данные с одинаковым логином вносились, появилась ошибка
Поискал по форуму, нашел одну функцию, если пишу:
то на экране:
Если пишу:
то на экране:
Почему так происходит, я ведь только заменил одно поле на другое и пароль на логин, должно же работать одинаково, правильно? Спасибо!
Вопрос закрыт! Решение: надо было переменную, в которой лежит новый логин, обрамить кавычками (таков синтаксис)
Код:
$res=mysql_query("SELECT * FROM users WHERE pass=".$password); // users-таблица, pass-поле
Но нужно еще проверить существует ли в базе такой логин (в БД поле name) и пароль, написал такую строку:
Код:
$res=mysql_query("SELECT * FROM users WHERE name=".$log." AND pass=".$password);
Код:
$res=mysql_query("SELECT * FROM users WHERE name=".$log);
Код:
mysql_fetch_array() expects parameter 1 to be resource, boolean given
Код:
mysql_query($res) || die(mysql_error());
Код:
Query was empty
Код:
mysql_query("select * from users WHERE name=".$log) || die(mysql_error());
Код:
Unknown column 'Логин' in 'where clause'
Вопрос закрыт! Решение: надо было переменную, в которой лежит новый логин, обрамить кавычками (таков синтаксис)
Код:
$res=mysql_query("SELECT * FROM users WHERE name='.$log'");
Последнее редактирование: