Отображение комментариев - PullRequest
0 голосов
/ 05 июня 2011

Эй, ребята, извините, если это любительский вопрос, но у меня возникли небольшие проблемы с этим.

Как отобразить комментарии к определенной странице?(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)

Любая помощь будет оценена, спасибо

1 Ответ

2 голосов
/ 05 июня 2011

взгляните на мой пример кода.

Рассмотрим таблицу 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/

...