if($_POST['submit']) {
$log = $_POST['log'];
$db = @mysql_connect("localhost","root","");
mysql_select_db("example1",$db);
$result = mysql_query("SELECT `id` FROM `users` WHERE log='".$_POST['log']."'");
if($result){echo 'ок ';} else {echo 'error ';}
}
при этом он всегда выдает "ок", а мне надо чтобы он это выдавал только если существует вводимый логин. единственый логин "admin".
З.Ы. приколы начинаются с $result.
Спустя 12 минут, 52 секунды (27.04.2011 - 21:45) Игорь_Vasinsky написал(а):
Цитата |
З.Ы. приколы начинаются с $result. |
З.Ы. приколы начиютнаются когда люди не уважают других и ленятся использовать BB-теги для оформления своего сообщения.
Цитата |
$result = mysql_query("SELECT `id` FROM `users` WHERE log='".$_POST['log']."'"); |
может вот так:
$result = mysql_query("SELECT * FROM `users` WHERE log='".$_POST['log']."'");
будите так запросы в БД посылать - откроете свою БД для всех.
Безопасность учитывайте. SQL - инекции....
Спустя 9 минут, 38 секунд (27.04.2011 - 21:55) Guest написал(а):
Игорь_Vasinsky
Зачем вытаскивать из базы всё, если нужно только id ?
А в остальном согласен.
azarat
if (mysql_num_rows($result) == 0 ) - user not found
else user found
Зачем вытаскивать из базы всё, если нужно только id ?
А в остальном согласен.
azarat
if (mysql_num_rows($result) == 0 ) - user not found
else user found
Спустя 5 минут, 1 секунда (27.04.2011 - 22:00) Игорь_Vasinsky написал(а):
Цитата |
Зачем вытаскивать из базы всё, если нужно только id ? |
кто сказал?
сверка идёт по принятому логину (голому) а запрос в поле id
в чём логика.... хз
и естес-но
Цитата |
if (mysql_num_rows($result) == 0 ) - user not found else user found |
Спустя 6 минут, 36 секунд (27.04.2011 - 22:06) Гость_liw написал(а):
Я говорил про: SELECT * FROM
Как понять в чём логика? Эта проверка на существование логина, - если такой уже есть то поидее там должен быть уведомлён пользователь об этом, и отказано в регистрации (это как вариант).
Ну и что что в запросе поле id вытаскивает? - кому от этого плохо?
непонятно зачем тащить все столбцы? а если их там 150 штук. - опять же и при таком раскладе никому хуже не будет, но как то некрасиво это то ли.
Как понять в чём логика? Эта проверка на существование логина, - если такой уже есть то поидее там должен быть уведомлён пользователь об этом, и отказано в регистрации (это как вариант).
Ну и что что в запросе поле id вытаскивает? - кому от этого плохо?
непонятно зачем тащить все столбцы? а если их там 150 штук. - опять же и при таком раскладе никому хуже не будет, но как то некрасиво это то ли.
Спустя 15 часов, 44 минуты, 10 секунд (28.04.2011 - 13:50) azarat написал(а):
Ну в принципия думал это использовать при регистрации, при поиске по сайту и при авторизации. хотя я читал что для автоизации используются сеансы, но я не совсем понимаю зачем они ;) .
З.Ы. код Vasinsky заработал как надо, но только если заменить 0 на 1 <_< .
а насчет оформления учту, это мой первый форум в котором учавствую :)
З.Ы. код Vasinsky заработал как надо, но только если заменить 0 на 1 <_< .
if (mysql_num_rows($result) == 1 ) {echo 'user not found';} else {echo 'user found';}
а насчет оформления учту, это мой первый форум в котором учавствую :)
Спустя 8 дней, 1 час, 54 минуты, 51 секунда (6.05.2011 - 15:45) Niksik написал(а):
$db = @mysql_connect("localhost","root","password");
mysql_select_db("example1",$db);
$login = htmlspecialchars($_POST['log']);
$result = mysql_query("SELECT * FROM `users` WHERE `log`='.$login.'");
if (mysql_num_rows($result) == 1 )
{
echo 'Привет';
}
else
{
echo 'Пока';
}
Теги нужну вырезать ато плохо будет.
Спустя 41 минута, 34 секунды (6.05.2011 - 16:27) ИНСИ написал(а):
Цитата |
$result = mysql_query("SELECT * FROM `users` WHERE `log`='.$login.'"); |
Niksik неверно написал. В любом случае не будет находить никого. Ты точки зря поставил.
А автору, то вот, с защитой проверка:
$db = mysql_connect("localhost","root","password") or die(mysql_error());
mysql_select_db("example1",$db) or die(mysql_error());
function safesql($source) {
$source = trim($source);
if(get_magic_quotes_gpc()) $source = stripslashes($source);
return mysql_real_escape_string($source);
}
$result = mysql_query("
SELECT *
FROM `users`
WHERE `log` = '".safesql($_POST['log'])."'
LIMIT 1
") or die(mysql_error());
if(mysql_num_rows($result) > 0) {
echo 'Привет';
} else {
echo 'Пока';
}
Спустя 3 дня, 22 часа, 12 минут, 46 секунд (10.05.2011 - 14:40) Niksik написал(а):
Ну ты не прав я пользуюсь и всё норм!
