0

我需要您的帮助才能在我的文章下方显示评论。目前,我收到所有返回的 mysql_fetch_array() 元素的未定义索引错误。

请问我的问题来自哪里。?

谢谢你的时间。

评论表

   CREATE TABLE IF NOT EXISTS `comment` (
     `comment_id` int(255) NOT NULL AUTO_      INCREMENT,
      `article_id` int(255) NOT NULL,
      `username` varchar(25) NOT NULL,
   `comment_body` varchar(300) NOT NULL,
      `comment_date` datetime NOT NULL,
       PRIMARY KEY (`comment_id`),
      UNIQUE KEY `comment_id` (`comment_      id`)
        ) ENGINE=InnoDB  DEFAULT CHARSET=     latin1 AUTO_INCREMENT=3 ;

关于表

  CREATE TABLE IF NOT EXISTS `about` (
     `about_id` int(255) NOT NULL,
    `about_head` varchar(255) NOT NULL,
 `about_content` varchar(400) NOT NULL,
  `about_tags` varchar(25) NOT NULL,
  `about_created` datetime NOT NULL,
   `about_image` blob NOT NULL,
    PRIMARY KEY (`about_id`),
  UNIQUE KEY `about_id` (`about_id`)
     ) ENGINE=InnoDB DEFAULT CHARSET=        latin1;

评论的显示

   $query6=mysql_query("SELECT c.     username,c.comment_body,c.comment_     date
           FROM comment AS c  
  INNER JOIN about AS a ON
  c.article_id = a.about_id") or die
  (mysql_error()); 


   while ($comment = mysql_fetch_assoc       ($query6)) {

      echo "Comment: "; 
      $comment['comment_body'] ; 
      echo "<br/>" ;           

      echo "Date of Comment: ";
      $comment['comment_date'] ;                       echo "<br/>" ;        

      echo "Commenter: ";
      $comment['username'] ; 
      echo "<br/>" ;           
                 }

更新

我将 mysql_fetch_array 更改为 ysqo_fetch_assoc,但我仍然收到相同的错误....未定义索引。

4

2 回答 2

0

看看你(不能)打字的方式,我敢打赌是错字。
无论如何,做一个

var_dump($comment);

在循环内部并查看实际的数组内容。

于 2012-05-04T05:05:22.880 回答
0

我已经在我的本地主机中进行了测试,但我没有得到问题。但是,如果您在结果集中遇到“未定义索引”问题,那么您正在键入数组中不存在的数组的索引值。做这个

echo "<pre>";
print_r($comment);
echo "</pre>";

这将帮助您跟踪数组的当前索引值。

您在“ $comment['......”之前缺少“echo”或“print”

于 2012-05-04T05:48:42.270 回答