好吧,我的登录系统遇到了这个错误,当我打开login.php页面时,它显示“错误的用户名或密码”。
我想知道如何做到这一点,以便仅在我单击登录按钮时检查我的用户名和密码,而不是在我加载页面时检查我的用户名和密码
我的按钮是<input>
我尝试添加 onclick="checklogin()"
这是 checklogin 函数:
$username=$_POST['username'];
$password=$_POST['password'];
function checklogin()
{
$sql="SELECT * FROM `users` WHERE `username`='". $username ."' and `password`='". md5($password) ."'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){
session_register("username");
session_register("password");
header("location:login_success.php");
}else{
echo "Wrong username or password.";
}
}
但是没有任何反应...即使我的密码/名称正确,即使我弄错了,页面也会刷新...但是当我删除“function checklogin()”时(其内容仍然保留,只需删除函数标签)和 onclick 属性它将起作用,但正如我在开头所说的,当我刚刚加载页面时,它会说“密码或用户名错误”
为了缩短这个时间,我该如何制作,以便仅在用户单击按钮( <input type="submit" name="submit" value="login"/>
)时应用此登录检查
最佳答案
使用isset
if(isset($_POST['submit'])){
$username=$_POST['username'];
$password=$_POST['password'];
}
关于PHP/MySQL 仅在用户单击按钮时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23145783/