我已经为评论框创建了一个表单,我将在几个不同的页面上使用它。它将数据发送到我的数据库中名为“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/