Создал простую форму для входа, но он, похоже, не работает. Он всегда открывает страницу администратора.простой вход php не работает
$username=$_POST["username"];
$password=$_POST["password"];
if(mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'",$con)){
session_start();
$_SESSION["username"]=$username;
$_SESSION["password"]=$password;
header('location:admin.html');
}
else{
echo "Login Failed.<a href=index.html>Re Login</a";
}
Нужна помощь. А вот часть html.
<form method="post" id="loginform" action="validate.php">
<table>
<tr>
<td>
<label>Username :</label>
</td>
<td>
<input type="text" name="username"/>
</td>
</tr>
<br>
<tr>
<td>
<label>Password :</label>
</td>
<td>
<input type="password" name="password"/>
</td>
</tr>
<br>
<tr>
<td>
<input type="submit" id="login" value="Log In" class="btn btn-primary"/>
</td>
<td>
<input type="reset" id="reset" value="Reset" class="btn btn-primary"/>
</td>
</tr>
</table>
Нужна рабочий код в 2HRS еще им dommed
Любая ошибка ..? если вы сначала вводите имя пользователя или пароль, задаете сессию, и вы можете войти на страницу. –
Вы просто проверяете, успешно ли выполнялся запрос, вы не проверяете, действительно ли вы получаете любые строки пользователей, которые были возвращены из выбранного. Кроме того, пожалуйста, используйте подготовленные/параметризованные запросы для смягчения взлома sql. И вы должны использовать собственный PHP 'password_hash' http://php.net/manual/en/function.password-hash.php api для хэш-паролей (никогда не хранить пароли с открытым текстом). – JimL
Этот код очень плохой и небезопасный, он широко открыт для SQL-инъекции и использует функции mysql_, которые больше не доступны в последних версиях PHP. Также я не вижу нигде в вашем коде, где вы фактически открываете соединение с базой данных. – GordonM