php - 单页登录表单(表单+验证)无法正常工作
php - single page login form (form+validation) not working properly
我自己尝试了单页登录(表单+验证)。效果稍好。我正在使用 SESSION
检查所有条件(用户是否存在,密码是否正确)。
我的代码在这里:
if(isset($_SESSION['loggedin']))
{
header("Location:member_page.php");
}
if(!isset($_POST['submit']))
{
if(isset($_SESSION['result']))
{
if($_SESSION['result']=="false")
echo "<font color=white>Invalid Credentials. Try again!!! </font>";
if($_SESSION['result']=="false1")
echo "<font color=white>User doesn't exist. Try again!!!</font>";
}
}
else
{
/* check user Authentication in DB*/
}
效果不错。但是当我重新加载页面时,会话仍然存在,因此页面中显示相同的错误。我认为这可能会让用户感到厌烦。是否可以在此代码中进行任何修改来解决此问题?
还告诉我这段代码是否适用于单页登录表单?
回显错误后,您需要从会话中删除变量。
在
下添加unset($_SESSION['result']);
if($_SESSION['result']=="false")
echo "<font color=white>Invalid Credentials. Try again!!! </font>";
if($_SESSION['result']=="false1")
echo "<font color=white>User doesn't exist. Try again!!!</font>";
我自己尝试了单页登录(表单+验证)。效果稍好。我正在使用 SESSION
检查所有条件(用户是否存在,密码是否正确)。
我的代码在这里:
if(isset($_SESSION['loggedin']))
{
header("Location:member_page.php");
}
if(!isset($_POST['submit']))
{
if(isset($_SESSION['result']))
{
if($_SESSION['result']=="false")
echo "<font color=white>Invalid Credentials. Try again!!! </font>";
if($_SESSION['result']=="false1")
echo "<font color=white>User doesn't exist. Try again!!!</font>";
}
}
else
{
/* check user Authentication in DB*/
}
效果不错。但是当我重新加载页面时,会话仍然存在,因此页面中显示相同的错误。我认为这可能会让用户感到厌烦。是否可以在此代码中进行任何修改来解决此问题? 还告诉我这段代码是否适用于单页登录表单?
回显错误后,您需要从会话中删除变量。
在
下添加unset($_SESSION['result']);
if($_SESSION['result']=="false")
echo "<font color=white>Invalid Credentials. Try again!!! </font>";
if($_SESSION['result']=="false1")
echo "<font color=white>User doesn't exist. Try again!!!</font>";