Ada*_*hur 0 html php mysql login
我目前正在构建一个非常非常基本的登录脚本,它基本上连接到数据库,并检查用户在表单中输入的值是否匹配.但是,出于某种原因,我的代码REFUSES在单击提交按钮时执行任何操作!! ?? 这是代码......
<?php
mysql_connect("localhost", "username", "password");
mysql_select_db("dbname");
?>
<body>
<?php
if(isset($_POST['submit'])){
$username = $_POST['username'];
$password = $_POST['password'];
$result = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password'");
$num = mysql_num_rows($result);
if($num == 0){
echo "Bad login, go <a href='login.php'>back</a>.";
}else{
session_start();
$_SESSION['username'] = $username;
header("Location: admin.php");
}
}else{
?>
<form action='login.php' method='post'>
Username: <input type='text' name='username' /><br />
Password: <input type='password' name='password' /><br /><br />
<input type='submit' value='Login' />
</form>
<?php
}
?>
</body>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
你正在检查
if(isset($_POST['submit'])){
Run Code Online (Sandbox Code Playgroud)
...但$_POST['submit']永远不会被设置,因为您没有为任何表单控件提供name="submit"属性.
将提交按钮更改为:
<input type='submit' name='submit' value='Login' />
Run Code Online (Sandbox Code Playgroud)
还请清理您的数据库输入,最好是通过参数化查询.