无法在php登录页中显示用户名
我正在为我的网站创建登录系统,用户登录后无法打印用户名 从数据库中验证后,我已完成以下操作:无法在php登录页中显示用户名,php,login-system,Php,Login System,我正在为我的网站创建登录系统,用户登录后无法打印用户名 从数据库中验证后,我已完成以下操作: $_SESSION['userName']; $_SESSION['password']; header("location:success.php"); 这是在success.php文件中打印用户名的代码: session_start(); if($_SESSION['userName']!='') { header("location:login_form.p
$_SESSION['userName'];
$_SESSION['password'];
header("location:success.php");
这是在success.php文件中打印用户名的代码:
session_start();
if($_SESSION['userName']!='')
{
header("location:login_form.php");
}
else
{
echo '<h2>Successfully Login <br /> Welcome '.$userName.'</h2>';
echo '<a href="logout.php"> Log Out</a>';
}
session_start();
如果($\会话['userName']!='')
{
标题(“位置:login_form.php”);
}
其他的
{
echo“成功登录”
欢迎“$userName”;
回声';
}
但用户名没有打印出来 这一行:
if($_SESSION['userName']!='')
应该是:
if($_SESSION['userName']=='')
$_SESSION['userName'] = 'My Username';
$_SESSION['password'] = 'My Password';
header("location:success.php");
这一行:
if($_SESSION['userName']!='')
应该是:
if($_SESSION['userName']=='')
$_SESSION['userName'] = 'My Username';
$_SESSION['password'] = 'My Password';
header("location:success.php");
我想你想要:
echo '<h2>Successfully Login <br /> Welcome '.$_SESSION['userName'].'</h2>';
应该是
if($_SESSION['userName']=='')
我想你想要:
echo '<h2>Successfully Login <br /> Welcome '.$_SESSION['userName'].'</h2>';
应该是
if($_SESSION['userName']=='')
首先,您没有将会话分配给任何值
$_SESSION['userName'];
$_SESSION['password'];
header("location:success.php");
应该是:
if($_SESSION['userName']=='')
$_SESSION['userName'] = 'My Username';
$_SESSION['password'] = 'My Password';
header("location:success.php");
其次,您还没有定义变量$userName
。将其更改为:$\u会话['userName']
另一方面,您不应该在会话中存储密码,还应该在使用header()重新引导用户之后添加die()
或exit()
编辑:
只要重新阅读你的代码。尽管我之前的回答者建议你改变这一行:
if ($_SESSION['userName'] != '')
致:
实际上,使用逻辑运算符检查会话是否存在是一种不好的做法。正确的方法是使用isset()
函数:
if (isset($_SESSION['userName']))
祝你好运 首先,您没有将会话分配给任何值
$_SESSION['userName'];
$_SESSION['password'];
header("location:success.php");
应该是:
if($_SESSION['userName']=='')
$_SESSION['userName'] = 'My Username';
$_SESSION['password'] = 'My Password';
header("location:success.php");
其次,您还没有定义变量$userName
。将其更改为:$\u会话['userName']
另一方面,您不应该在会话中存储密码,还应该在使用header()重新引导用户之后添加die()
或exit()
编辑:
只要重新阅读你的代码。尽管我之前的回答者建议你改变这一行:
if ($_SESSION['userName'] != '')
致:
实际上,使用逻辑运算符检查会话是否存在是一种不好的做法。正确的方法是使用isset()
函数:
if (isset($_SESSION['userName']))
祝你好运 除非您在别处省略了代码,否则不会定义此变量:$userName
您缺少将其定义为变量。尝试:
$userName= $_SESSION['userName'];
$password = $_SESSION['password'];
除非您在别处省略了代码,否则不会定义此变量:$userName
您缺少将其定义为变量。尝试:
$userName= $_SESSION['userName'];
$password = $_SESSION['password'];
不是对您问题的回答,但位置
标题需要一个完整(绝对)URL。@PeeHaa您在外部服务器上工作时不是这样吗?否。规范规定应该使用绝对URL。不是对您问题的回答,而是位置
标题需要一个完整(绝对)URLURL。@PeeHaa您在外部服务器上工作时不是这样吗?不是。规范规定应该使用绝对URL。我想您已经将这些分配向后进行了。@Sammitch当时在哪里定义了$userName?我想您已经将这些分配向后进行了。@Sammitch当时在哪里定义了$userName?如果(array_key_)存在('userName',$\u SESSION')是另一个可能的检查。通过使用:echo“成功登录
欢迎”。$userName和if($\u SESSION['userName']='')解决;if(array_key_存在('userName',$\u SESSION))是另一个可能的检查。通过使用:echo“成功登录
欢迎”。$userName和if($\u SESSION['userName']='')解决;