Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在php登录页中显示用户名_Php_Login System - Fatal编程技术网

无法在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']='')解决;