php - 如何显示存储在数据库中的某些评论

标签 php mysql forms

我已经为评论框创建了一个表单,我将在几个不同的页面上使用它。它将数据发送到我的数据库中名为“comments”的表,该表包含“id”、“author”、“body”、“created”和“page_name”列。我是 php 的新手,我正在尝试弄清楚如何只显示与当前页面具有相同“page_name”值的评论。

为了获取“page_name”,我使用了以下形式的代码:

<input type="hidden" name="page_name" value="<?=$_SERVER['REQUEST_URI']?>" />

这是我为显示评论而构建的代码:

<div id="comments">
  <?php foreach($comments as $comment): ?>
    <div class="comment" style="margin-bottom: 2em;">
        <div class="author">
          <b><?php echo htmlentities($comment->author); ?>:</b>
        </div>
        <div class="meta-info" style="font-size: 0.8em;">
          <?php echo datetime_to_text($comment->created); ?>
        </div>
      <div class="body">
          <?php echo strip_tags($comment->body, '<strong><em><p>'); ?>
      </div>
    </div>
  <?php endforeach; ?>
  <?php if(empty($comments)) { echo "No Comments."; } ?>
</div>

我只是不确定如何告诉页面只显示与用户所在页面具有相同“page_name”值的评论。任何帮助将不胜感激!

最佳答案

你要像查询url对应的数据。

数据库连接使用下面的代码:

<?php
// Create connection
$db_con=mysql_connect('servername','db username','dbpassword');
if (!$db_con) 
{
    die('Could not connect: ' . mysql_error());
}
$connection_string=mysql_select_db('db name',$db_con);
?>

查询使用代码:

$url=$_SERVER['REQUEST_URI'];
$query=mysql_query("select * from comments where page_name='".$url."'");
while($result=mysql_fetch_row($query))
{
echo $result[0]."<br>".$result[1]."<br>";          // echo all values that are needed for displaying. You can do the coding for displaying formatted values inside this loop.
}

关于php - 如何显示存储在数据库中的某些评论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21013220/

相关文章:

mysql - 有没有办法将值从mysql回调函数传递到express中的外部函数?

java - 数据库连接应该始终保持打开状态还是仅在需要时才打开?

javascript - 单次输入表单如何避免重复提交?

php - 从 Laravel 中的 whereHas 查询返回数据

php - 如何找到包含在数组中的值中的值?

php - sql中如何找出重复次数最多的值

mysql - 通过向 dst 和 src 发送 RST 来强制关闭 TIME_WAIT 连接?

javascript - 在 ng-click 之后调用的 ng-submit 操作

html - 为什么单击浏览器后退按钮时有时会清除 HTML 表单

PHP 语法 : $var = (new Class())->someFunction();