嘿,大家好抱歉,如果这是一个业余问题,但我对此有点麻烦。
如何针对特定页面显示评论? (page.php文件?ID = 48)
因为现在,每次发表评论时,它都显示在所有页面上,而不是我想要发布的页面上
下面是代码:
$userfinal=$_SESSION['username'];
$rs = mysql_query("SELECT id FROM searchengine") or die(mysql_error());
$rec = mysql_fetch_assoc($rs);
$id = $rec['id'];
// get the messages from the table.
$get_messages = mysql_query("SELECT messages_id FROM messages WHERE to_user='$id' ORDER BY messages_id DESC") or die(mysql_error());
$get_messages2 = mysql_query("SELECT * FROM messages WHERE to_user='$id' ORDER BY messages_id DESC") or die(mysql_error());
$num_messages = mysql_num_rows($get_messages);
// display each message title, with a link to their content
echo '<ul>';
for($count = 1; $count <= $num_messages; $count++){
$row = mysql_fetch_array($get_messages2);
// if the message is not read, show "(new)"
// after the title, else, just show the title.
if($row['message_read'] == 0)
感谢任何帮助,谢谢
答案 0 :(得分:2)
看看我的示例代码。
考虑具有基本结构的表comments
。
CREATE TABLE `comments` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`comment` text NOT NULL,
`article_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
);
comment
列将保留您的评论文字
article_id
保存其所属文章的外键。
现在假设您要从特定articleid
article.php?id=48
这是你应该怎么做的。
$articleId = mysql_real_escape_string($_GET['id']);
$query = 'SELECT id,comment FROM comments WHERE article_id ='.$articleId;
$result = mysql_query($query);
while($row = mysql_fetch_array($result)) {
echo nl2br($row['comments']);
}
虽然我的代码完全与您的问题无关,但它应该为您提供有关如何实现逻辑的基本知识。
编辑:
你不应该使用代码进行生产,代码只是为了解释你实现逻辑,记住这段代码容易受到SQL注入攻击,如果你想要临时修复你可以使用mysql_real_escape_string()函数来避免它。检查我的更新代码。
提示:您应该尝试使用PDO进行所有数据库查询,这是帮助您入门的教程http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/