我正在尝试从MySql表中检索一些数据。但是当我运行查询时,显示注意:未定义的索引:id 。但是当我在SQLyog中运行相同的查询时,它显示正确的结果。没有任何错误。
查询:
SELECT id,temp_name,added,updated FROM `projtemp` WHERE `user_id`='0000000001'
从SQLyog出来:
来自Firebug控制台的错误:
<b>Notice</b>: Undefined index: id in <b>C:\xampp\htdocs\xxx\yyy\zzz\aaa.php</b> on line <b>61</b><br />
我执行的Php代码:
try {
$paginate = new pagination($page, "SELECT id,temp_name,added,updated FROM `projtemp` WHERE `user_id`='$uid'", $options);
} catch (paginationException $e) {
echo $e;
exit();
}
更新:
if ($paginate->success == true) {
while ($row = $result->fetch_assoc()) {
$temp=array();
$temp['id']=$row['id']; // In this line I'm Getting Error Line-61
$temp['tname'] = $row['temp_name'];
$temp['added'] = $row['added'];
if ($row['updated'] == '') {
$temp['updated'] = 'Never';
} else {
$temp['updated'] = $row['updated'];
}
$data['data']=$temp;
}
请任何人帮我解决这个问题....
答案 0 :(得分:0)
试试这个,你不需要用''表示整数字段
$paginate = new pagination($page, "SELECT id,temp_name,added,updated FROM `projtemp` WHERE `user_id`=$uid", $options);
答案 1 :(得分:0)
您获得的错误与您的SQL查询无关。这是关于数组处理。我假设您以后在PHP代码中使用ID来逐步执行数组?在那里寻找错误。
答案 2 :(得分:0)
在我的数据库中处理了这个查询:
"SELECT `id`, `temp_name`, `added`, `updated` FROM `projtemp` WHERE `user_id`=$uid"
或
"SELECT * FROM `projtemp` WHERE `user_id`=$uid"
但是我没有在你的表中看到user_id
答案 3 :(得分:0)
在您正在检索数据的函数fetch_assoc()
中,将结果行作为关联数组,数字数组或两者获取。在你的情况下,你应该写
if ($row = mysql_fetch_array ( $result, MYSQL_BOTH )) {
$id=$row[0];
}
因为您表中的ID位于第0位。 Here您可以详细阅读。