PHP主题查看和回复脚本


PHP topic viewing and replying script

我正在一个小论坛上工作。我已经完成了主题发布;它在数据库和所有爵士乐中都是可见的。现在我正在检索主题列表,这样当你点击一个主题时,你就可以查看它。这很好,只是当我点击它时,页面会变为空白,什么都没有显示。我知道问题是我无法获得我点击的帖子的id,因为它在带有while循环的if-else语句中。这是我的密码。

<?php
  require('init.php');
  $get_threads = mysql_query("SELECT * FROM GOT ORDER BY time");
  if (!isset($_GET['view_thread'])) {
    $get_threads = mysql_query("SELECT * FROM GOT ORDER BY time");
    while ($select_threads = mysql_fetch_assoc($get_threads)) {
      $title = $select_threads['title'];
      $time = $select_threads['time'];
      $user = $select_threads['user'];
      $id = $select_threads['id'];
      $form = '<center>
               <form method="get" action="">
               <input type="submit" name="view_thread" id="view_thread" value="'.$title.'" />
               <input type="hidden" name="thread_id" id="thread_id" value="'.$id.'" />
               </form>
               </center>';
      echo '<div id="post_info">'.$form.'<hr>Posted by: <b>'.$user.'</b> '.$time.'</div>';
    }
  } else {
    $get_posts = mysql_query("SELECT * FROM GOT WHERE id='$id'");
    $select_posts = mysql_fetch_assoc($get_posts);
    $content = $select_posts['content'];
    echo $content;
  }
?>

我需要得到$id,这样我就可以获取帖子,然后从数据库中获得所有回复。我是php的新手,所以我可能遗漏了一些东西。谢谢你的帮助!

首先:您的参数名为"thread_id",因此您的查询应该是

$get_posts = mysql_query("SELECT * FROM GOT WHERE id='$thread_id'");

但我强烈建议

  1. 使用POST而不是GET
  2. 使用mysql_real_eescape避免SQL注入