У меня есть сайт, на котором вы можете отправлять приветственные сообщения через php на сервер mysql и страницу входа администратора. На странице входа в систему администратора отображаются все сообщения со статусом, ожидающим, отклоняемым или принятым с отклонениями кнопок и принимающими рядом с каждым сообщением. В настоящее время всякий раз, когда я нажимаю «принимать» или «отклонять», все сообщения становятся отклоненными или принятыми в базе данных. Я хотел бы, чтобы кнопки вызывали скрипт с параметром, который является идентификатором сообщения, которое они принимают/отклоняют, но я честно не знаю правильного синтаксиса. Любая помощь будет принята с благодарностью.php/mysql UPDATE где id = blah
$query = "SELECT name, location, message, status FROM messages ORDER by status ";
if ($query_run = mysql_query($query))
{
while ($query_row = mysql_fetch_assoc($query_run))
{
$name = $query_row['name'];
$location = $query_row['location'];
$message = $query_row['message'];
$status = $query_row['status'];
echo '<form method="POST" action="login.php">';
echo 'From: '.$name.'<br>Location: '.$location.'<br>Status: '.$status.'<br>Message: '.$message.'<br><br>';
?>
<input type="submit" value="Approve" name="accept">
<input type="submit" value="Reject" name="reject"></form>
<?php
if (isset($_POST['accept']))
{
echo 'Accepted!';
$updateAccept = "UPDATE messages SET status = 'a'";
mysql_query($updateAccept);
};
if (isset($_POST['reject']))
{
echo 'Rejected!';
$updateAccept = "UPDATE messages SET status = 'r'";
mysql_query($updateAccept);
}
'UPDATE ... WHERE' вам нужно предложение WHERE. – Jon
добавьте скрытое поле с идентификатором записи, прочитайте это с помощью '$ _POST' и примените его к вашему sql-запросу. – michi
И, пожалуйста, подумайте о переходе на mysqli или PDO вместо устаревших функций mysql_ *. –