rafic
Местный житель
- Регистрация
- 14 Май 2008
- Сообщения
- 477
- Реакции
- 24
- Автор темы
- #1
У меня возникла такая проблема. Написал кусок кода авторизации на сайте. Если я код запихиваю в функцию то он не работает, а если я ее убираю - все на ура. В чем может быть моя ошибка?:bc:
Не рабочий вариант:
Рабочий вариант:
И подскажите как правильно сделать проверку SQL запроса на true и false?
Могу ли я написать
так будет правильно? Мне это нужно для того, что бы в случае, если такого пользователя нету в БД, тогда запрос выдаст false и я напишу "Такой пользователь не зарегистрирован в системе"
Не рабочий вариант:
PHP:
function loggin($user_login,$user_pass){
$user_login = mysql_real_escape_string($user_login);
$user_pass = mysql_real_escape_string($user_pass);
$user_pass = md5(md5($user_pass));
$result = mysql_query ("SELECT usernick, userpass FROM ".$usertable." WHERE usernick ='".$user_login."'");
while ($line = @mysql_fetch_array($result, MYSQL_BOTH)){
$userdb = $line['usernick'];
$passdb = $line['userpass'];
}
if(($user_login == $userdb) && ($user_pass == $passdb)){
echo "good";
} else {
echo "error";
}
}
$user_login = "user";
$user_pass = "123";
loggin($user_login,$user_pass);
Рабочий вариант:
PHP:
$user_login = "user";
$user_pass = "123";
$user_login = mysql_real_escape_string($user_login);
$user_pass = mysql_real_escape_string($user_pass);
$user_pass = md5(md5($user_pass));
$result = mysql_query ("SELECT usernick, userpass FROM ".$usertable." WHERE usernick ='".$user_login."'");
while ($line = @mysql_fetch_array($result, MYSQL_BOTH)){
$userdb = $line['usernick'];
$passdb = $line['userpass'];
}
if(($user_login == $userdb) && ($user_pass == $passdb)){
echo "good";
} else {
echo "error";
}
И подскажите как правильно сделать проверку SQL запроса на true и false?
Могу ли я написать
PHP:
$result = mysql_query ("SELECT usernick, userpass FROM ".$usertable." WHERE usernick ='".$user_login."'");
if($result){
while ($line = @mysql_fetch_array($result, MYSQL_BOTH)){
$userdb = $line['usernick'];
$passdb = $line['userpass'];
}
}