php登录表单密码无效消息问题
我在index.php页面上有一个登录表单,我有一个login.php文件来连接和检查MySQL数据库。如果密码或用户名错误,我想返回表单并显示错误消息 目前,login.php中提交后的代码如下:php登录表单密码无效消息问题,php,mysql,session,post,Php,Mysql,Session,Post,我在index.php页面上有一个登录表单,我有一个login.php文件来连接和检查MySQL数据库。如果密码或用户名错误,我想返回表单并显示错误消息 目前,login.php中提交后的代码如下: //database checking... $num_row = mysql_num_rows($result); if( $num_row == 1 ) { $_SESSION['login_user']=$username; he
//database checking...
$num_row = mysql_num_rows($result);
if( $num_row == 1 ) {
$_SESSION['login_user']=$username;
header("location:startscreen.php");
}
else{
$_SESSION['login_error'] = "Your username or password is incorrect";
header("location:index.php");
exit();
}
在index.php页面中:
<?php
if (! empty($_SESSION('login_error'])) {
echo '<div>'.$_SESSION('login_error').'</div>';
}
else {echo '<div>empty error msg</div>';}
?>
现在的情况是:当密码正确时,页面正确流动,但是如果密码错误,它会返回表单,但是$\u会话['login\u error']实际上是空的。这里有什么明显的问题吗?我不明白为什么它不起作用
谢谢你的帮助 添加会话\u开始;在你的脚本之上
并将您的代码替换为各自文件中的以下代码。这是一种更有效的编码方式
login.php
index.php
您是否已开始会话?请尝试添加会话\u start;就在…谢谢伙计们…不,我没有开始上课,那太傻了,对不起。。。
//database checking...
$num_row = mysql_num_rows($result);
if( $num_row ) {
$_SESSION['login_user']=$username;
header("location:startscreen.php");
} else{
$_SESSION['login_error'] = "Your username or password is incorrect";
header("location:index.php");
exit();
}
if ( isset($_SESSION['login_error']) and !empty($_SESSION['login_error']) ) {
echo '<div>'.$_SESSION('login_error').'</div>';
} else {
echo '<div>empty error msg</div>';
}