Я создаю очень простой форум с возможностью комментировать сообщения. Как вы можете видеть, этот код показывает коммиты, и когда автор комментариев равен зарегистрированному пользователю, он должен показать кнопку удаления, чтобы удалить комментарий. Проблема в том, что когда я нажимаю кнопку «Удалить», она удаляет все комментарии по почте, а не только комментарий с кнопкой «Удалить» рядом с ней.MYSQL удалить определенную строку строки PHP
Мой стол «Комментарии» имеет столбцы ID, discid, comment_username, комментарий и COMMENT_TIME, в котором discid столбец «комментарии» относится к колонке идентификаторов в таблице «dicussions»
<?php
$id = mysql_real_escape_string($_GET['id']);
$query = 'SELECT * FROM discussions WHERE `id` = '.$id.' LIMIT 1';
$result = mysql_query($query);
$row = mysql_fetch_array($result);
?>
<h2><? echo $row['category'] . $row['topic']; ?></h2>
<div>Posted on <? echo $row['date_time']; ?> by <? echo $row['username'] ?></div>
<div><? echo $row['discussion']; ?></div>
<?
$result_comments = mysql_query("SELECT * FROM comments WHERE discid = $id ORDER BY comment_time ASC");
while ($record = mysql_fetch_array($result_comments))
{
?>
<form action="" method="POST" >
<? echo $record['comment_username']. $record['comment_time'] ?>
<!-- if comment from logged in user, show delete option -->
<?
if ($record['comment_username'] == $log_username)
{
echo '<span><button title="Delete comment" value="' . $record['id'] .'" name="deletecommentbutton" type="submit">X</button></span>';
}
if(isset($_POST['deletecommentbutton']))
{
$commentid = $record['id'];
$result_delete = mysql_query("DELETE from comments WHERE id='$commentid'");
header("Location: url/discussion_view.php?id=".$_GET['id']."");
}
?>
<div><? echo $record['comment'] ?></div></form>
<?php } ?>
Как я могу выполнить его только для выбранного идентификатора? –
Просто используйте значение из '$ _POST ['deletecommentbutton']', которое является идентификатором выбранного комментария. Но не забывайте санировать его! –
Не могли бы вы привести мне пример или способ начать? Я не могу заставить его работать :( –