2014-09-20 148 views
2

我收到此错误:未定义指数

Notice: Undefined index: kolebro in /Applications/MAMP/htdocs/includes.php on line 12 

function.php

public function User_Details($uid) 
{ 
    $username = mysql_real_escape_string($uid); 
    $query = mysql_query("SELECT uid, username, sansiti, kolebro AS full_name FROM users WHERE uid = '$uid' AND status = '1'") or die(mysql_error()); 
    $data = mysql_fetch_array($query); 
    return $data;  
} 

includes.php

$session_data = $Wall->User_Details($uid); 
$session_sansiti = $session_data['sansiti']; // <== Line 12 
$session_kolebro = $session_data['kolebro']; 

的index.php

<?php echo $session_kolebro; ?> 
<?php echo $session_sansiti; ?> 

谁能帮我理解(是什么原因造成的)这个错误?

+0

请注意(不是错误),确切地说是怎么回事 - 你的'$ session_data'数组在'kolebro'键下没有任何值。 – fracz 2014-09-20 20:41:16

+0

'var_dump($ session_data)'查看内容 – msfoster 2014-09-20 20:41:30

+0

我认为你的函数不起作用,因为它没有包含连接。 – Mihai 2014-09-20 20:45:16

回答

6

你检索使用别名full_name数据库字段kolebro - 所以$session_data不会有kolebro指数,这将有一个叫full_name代替。

  • 要么改变$session_data['kolebro']$session_data['full_name']
  • 或者从MySQL查询中删除AS full_name

此外,please don't use mysql_* functions in new code。他们不再维护and are officially deprecated。请参阅red box?请改为了解prepared statements,并使用PDOMySQLi - this article将帮助您决定哪个。如果您选择PDO,here is a good tutorial