|
|
|
|
<?
if (empty($HTTP_POST_VARS['login']) and empty($HTTP_POST_VARS['password'])) //
{
?>
<html>
<body>
<form method="post" action="engine.php">
<table>
<tr>
<td>Login:</td>
<td><input type="text" name="login"></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td colspan=2><input type="submit" value="Вход/регистрация"></td>
</tr>
</table></form>
</body>
</html>
<?
}
else
{
include "config.php";
$login=($HTTP_POST_VARS['login']);
$password=($HTTP_POST_VARS['password']);
$select_row="SELECT * FROM admin";
$query=mysql_query($select_row);
$count_row=mysql_num_rows($query);
if($count_row==0)
{
$admin=mysql_query ("insert into admin values ('$login','$password');");
}
else
{
/**** С этого места возникает проблема***/
$admin1=mysql_query("select * from admin where login='$login' and pass='$password';");
if ($admin1)
{
echo("ВЫ ПРИНЯТЫ");
}
else
{
echo("ВЫ НЕ ПРИНЯТЫ");
}
}
}
?>
|
В файле config.php рописано подключение и выбор БД. Скрипт регистрирует нового админа нормально, но если заходишь второй раз то скрипт идет по пути "ВЫ ПРИНЯТЫ" в любом случае какой-бы логин и пароль я не вводил. В чем проблема? | |
|
|
|
|
|
|
|
для: ares44
(27.03.2005 в 14:01)
| |
$admin1=mysql_query("select * from admin where login='$login' and pass='$password';");
if ($admin1)
{
echo("ВЫ ПРИНЯТЫ");
}
else
{
echo("ВЫ НЕ ПРИНЯТЫ");
}
|
Тут дело вот в чем.
$admin1=mysql_query("select * from admin where login='$login' and pass='$password';"); Будет равен true при правельном выполнение запроса =) т.е. есть в таблице данные о пользователе или нет результат все равно будет true ? ведь запрос выполнен.
изменить следует так
$admin1=mysql_fetch_array(mysql_query("select count(*) from admin where login='$login' and pass='$password'"));
if ($admin1["count(*)"] > 0)
{
echo("ВЫ ПРИНЯТЫ");
}
else
{
echo("ВЫ НЕ ПРИНЯТЫ");
}
|
| |
|
|
|
|
|
|
|
для: Akira
(27.03.2005 в 15:29)
| | Или вот так:
<?
admin1=mysql_query("select * from admin where login='$login' and pass='$password'");
if(mysql_num_rows($admin1) != 0)
{
cho("ВЫ ПРИНЯТЫ");
}
else
{
echo("ВЫ НЕ ПРИНЯТЫ");
}
?>
|
| |
|
|
|
|
|
|
|
для: evgen_17
(30.03.2005 в 19:19)
| | а если так
<?
$query = "SELECT password FROM users WHERE login='$login' AND pass = '$pass'";
connect(); // соединение с бд
$check = mysql_query($query);
if (mysql_num_rows($check))
{
Вы приняты
}
else
{
вы не приняты.
}
?>
|
| |
|
|
|