繁体   English   中英

回显相关表行(如果不为空)-PHP

[英]Echo Related Table Row If Not Empty - PHP

我想从comments表中回显行,其中entries表上存在评论。 但如果评论为空,则不显示它们。 我下面的代码当前将显示对博客条目的评论,但如果为空则不会显示。 换句话说:博客条目和评论都会显示,但是当您回显条目但没有评论时,它们甚至都不会回显任何内容 。else上的echo语句甚至不起作用。 我很确定自己做错了。 我在哪里有代码。

//if a blog post was made
//echo all the blog post
//If you select a particular blog post
//Echo that particular blog post

if (!empty($postID)) {
  $command = "select t1.blogID t1blogID, t1.author t1author, t1.date t1date, 
             t1.entry, t2.commentID, t2.author t2author, t2.date t2date, 
             t2.comments from $table_name t1, $table_name2 t2 
             where t1.blogID = t2.blogID and t1.blogID = $postID";
  $result = $db->query($command);
while ($data = $result->fetch_object()) {
  // I figured I'd create a variable here
  $postID = $data->t1blogID; 
  $t1author = $data->t1author;
  $t1date = $data->t1date;
  $entry = $data->entry;
  $commentID = $data->commentID;
  $t2author = $data->t2author;
  $t2date = $data->t2date;
  $comments = $data->comments;

  //So I can create this conditional statement 
  // if there is no comment
  if (!empty($commentID)) {
   echo "<TR><TD>Blog ID ".$postID."</TD>";
   echo "<TD>".$t1author."</TD>";
    echo "<TD>".$t1date."</TD>";
    echo "<TD>".$entry."</TD></TR>\n";   
    echo "<TR><TD>Comment ID ".$commentID."</TD>";
    echo "<TD>".$t2author."</TD>";
    echo "<TD>".$t2date."</TD>";
    echo "<TD>".$comments."</TD></TR>\n";
  }
  else {
    echo "<TR><TD>Blog ID ".$postID."</TD>";
    echo "<TD>".$t1author."</TD>";
    echo "<TD>".$t1date."</TD>";
    echo "<TD>".$entry."</TD></TR>\n";     
  }
  }
result->free();

尝试左连接两个表:

select t1.blogID t1blogID, t1.author t1author, t1.date t1date, t1.entry, t2.commentID, t2.author t2author, t2.date t2date, t2.comments from $table_name t1 LEFT JOIN $table_name2 t2 ON t1.blogID = t2.blogID where t1.blogID = $postID

会工作。

我不能发表评论,所以我会在这里做。 我不确定您的SQL是否正确,是否应该加入?

但是显然$ commentID不为空,因此请尝试:

if($commentID > 0)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM