从数据库生成标题并显示相关帖子

时间:2016-02-09 05:28:56

标签: php

我有一个数据库名称askadoc,人们可以询问他们的问题。我想在页面中一起显示所有问题(或者你可以说标题)。然后,当用户点击问题时,问题将显示在不同的页面中,并显示其评论/详细信息。为此,我尝试了下面的代码,它的工作完美。但是我怎么能不使用按钮呢?

<?php

       $comment = "SELECT * FROM `askadoc`  ";
       $result = mysqli_query($conn, $comment);
       $question = "";
       $id="";
       if(mysqli_num_rows($result)>0){
           while($row = mysqli_fetch_assoc($result)) {
            $id = $row["id"];
            $question = $row["question"];
            ?>
            <form action="post.php" method="post">
                <?php
                       echo $id;
                       echo "<input type='hidden' name  = 'id'  value = ".$id.">"; 
                       echo "<button>".$question."</button>";
                       echo "<br>";                   
                ?>
            </form>
            <?php  
          }
      }
    ?>

2 个答案:

答案 0 :(得分:0)

我认为你不需要形成这个。您可以像这样使用锚点。

if (mysqli_num_rows($result) > 0) {
    while ($row = mysqli_fetch_assoc($result)) {
        $id = $row["id"];
        $question = $row["question"];
        ?>
        <a href='post.php/<?php echo $id ?>' target="_blank"><?php echo $question ?></a>
        <?php
    }
}

现在,当您单击此锚点时,您会在post.php中获得问题ID,因此您可以轻松地显示特定的问题评论。

答案 1 :(得分:0)

您可以使用锚标记然后将问题ID传递给post.php

Stderr: 0%...
Progress state: E_FAIL
VBoxManage.exe: error: Failed to create the host-only adapter
VBoxManage.exe: error: Operation canceled by the user
VBoxManage.exe: error: Details: code E_FAIL (0x80004005), component VirtualBoxWrap, interface IVirtualBox
VBoxManage.exe: error: Context: "enum RTEXITCODE __cdecl handleCreate(struct HandlerArg *)" at line 71 of file VBoxManageHostonly.cpp

然后获取if(mysqli_num_rows($result)>0){ while($row = mysqli_fetch_assoc($result)) { $id = $row["id"]; $question = $row["question"]; ?> <?php echo "<a href='post.php?question_id=".$id."' target='_blank'>".$question."</a>"; echo "<br>"; ?> <?php } } 使用question_id

的值
$_GET['question_id'];

最好检查一下question_id是否存在。

$questionId = $_GET['question_id']