PHP中未定义的索引错误

时间:2013-06-23 16:36:05

标签: php phpmyadmin

我收到以下错误消息:

  

未定义的索引:登录第20行的C:\ wamp \ www \ Networking Script \ home.php

使用以下PHP代码时:

<?php
  include("session/DBConnection.php");
   $user = $_SESSION['log']['username'];  //this is the 20th line in home.php
    $query = mysql_query("SELECT * FROM members WHERE username = '$user'")or die (mysql_error()); 
    $display = mysql_fetch_array($query);   ?>

请帮帮我伙计:) 谢谢:))

6 个答案:

答案 0 :(得分:2)

使用

启动脚本

session_start();

答案 1 :(得分:1)

未定义的索引可能是“通知”。只是意味着您正在尝试访问尚未首先初始化的数组的一部分。

您可以在从数组中读取之前使用array_key_exists来检查偏移是否存在

答案 2 :(得分:0)

您也可能忘记开始会话。请记住,您还必须使用此功能来恢复会话:PHP: session_start - Manual

答案 3 :(得分:0)

您需要在访问会话数据的每个文件的开头调用session_start。

答案 4 :(得分:0)

它告诉你第20行的变量还不存在。

session_start();

if(isset($_SESSION['log']['username'])
{

include("session/DBConnection.php");
        $user = $_SESSION['log']['username'];  
        $query = mysql_query("SELECT * FROM members WHERE username = '".mysql_real_escape_string($user)."'")or die (mysql_error()); 
        $display = mysql_fetch_array($query); 
{
else
{
// on username
}

http://www.php.net/manual/en/book.pdo.php

http://uk1.php.net/manual/en/mysqlinfo.api.choosing.php

http://php.net/manual/en/function.htmlspecialchars.php输出代码到浏览器

http://php.net/manual/en/function.mysql-real-escape-string.php

答案 5 :(得分:0)

很确定已经说过了,但是冒着粗鲁的风险......这意味着可靠性尚未确定。它是空的。 在session_start(); 这将是第一件要检查的事情。 如果它没有通过你的“if isset”片段,则不会设置此值。 尝试简单地在变量被设置之后打印出来,并在变量发送到任何地方之前检查变量。