为什么我的索引未定义

  • 本文关键字:索引 未定义 php
  • 更新时间 :
  • 英文 :


可能的重复项:
PHP:"注意:未定义的变量"和"注意:未定义的索引"

我试图创建一个简单的login and register page,我在index .php页面上收到这些错误,为什么我的索引未定义这些是我得到的错误

Notice: Undefined index: username in C:xampphtdocsmysiteforum part twoindex.php on line 7
Notice: Undefined index: password in C:xampphtdocsmysiteforum part twoindex.php on line 8

第 7 行和第 8 行上的代码分别是

$username = $_SESSION['username'];
$password = $_SESSION['password'];

这是我的索引页

<?php
//This will start a session
session_start();
$username = $_SESSION['username'];
$password = $_SESSION['password'];
//Check do we have username and password
if(!$username && !$password){
echo "Welcome Guest! <br> <a href=login.php>Login</a> | <a href=register.php>Register</a>";
}else{
echo "Welcome ".$username." (<a href=logout.php>Logout</a>)";
}
?> 

您收到这些错误是因为您的会话尚未更早声明,因此您需要检查您的会话是否更早声明。 您可以使用 PHP 空或 ISSET 函数

<?php
//This will start a session
session_start();
$username ='';$password ='';
if(!empty($_SESSION['username']))//check if it is defined
    $username = $_SESSION['username'];
if(!empty($_SESSION['password']))//check if it is defined
    $password = $_SESSION['password'];
//Check do we have username and password
if($username=='' && $password==''){
   echo "Welcome Guest! <br> <a href=login.php>Login</a> | <a href=register.php>Register</a>";
}else{
echo "Welcome ".$username." (<a href=logout.php>Logout</a>)";
}
?> 

检查$_SESSION's是否存储任何值。

我给你举个例子:

  <?php
 //This will start a session
 session_start();
 if(isset($_SESSION['username']))
 {
     $username = $_SESSION['username'];
}else{
  $username = null;
}
var_dump($username);
// Would return NULL. SESSION IS NOT SET.
// if I add $_SESSION['username'] = "Phorce" session set, will return phorce.
?> 

或者:var_dump($_SESSION['username']);

希望这对:)有所帮助可能是$_SESSION['username']没有注册。

请在使用会话变量之前检查是否有分配给会话变量的值。

<?php
//This will start a session
session_start();
$username ="";
$password ="";
if(isset($_SESSION['username']))
$username = $_SESSION['username'];
if(isset($_SESSION['password ']))
$password = $_SESSION['password'];
//Check do we have username and password
if(!$username && !$password){
echo "Welcome Guest! <br> <a href=login.php>Login</a> | <a href=register.php>Register</a>";
}else{
echo "Welcome ".$username." (<a href=logout.php>Logout</a>)";
}
?> 

最新更新