繁体   English   中英

在mysql查询结果中更新

[英]Update within mysql query results

希望您能对我期望的简单功能有所帮助。

我想允许用户删除(即将Published = y更改为Published = n)查询结果,但是我一生都无法弄清楚该如何做。 查询如下:

$result = mysql_query("SELECT * FROM discussion WHERE publish='y' ORDER BY timestamp DESC");
while($row = mysql_fetch_array($result))
{
    echo ("<tr><td>" . $row['name'] . "<span class=\"remove\">(<a href=\"#\">REMOVE</a>)</span></td>
    <td width=\"300\">" . nl2br($row['question']) . "</td>
    <td>" . $row['author'] . "</td>
    <td>" . $row['timestamp'] . "</td>
    <td><a href=\"discussion.php?discussionID=" . $row['discussionID'] . "\">View Discussion</a></td></tr>");
}

当用户单击“删除”时,我要运行的查询(在上面的查询中):

mysql_query("UPDATE discussion SET publish='n' WHERE discussionID='XXXXX");

SO的优秀人才有什么想法吗?

php / mysql的新手,请原谅。

您可以通过同样的方式链接到讨论区(href = \\“ discussion.php?discussionID =”。$ row ['discussionID']。“ \\”>查看讨论区)。

a href = \\“ delete_discussion.php?discussionID =”。 $ row ['discussionID']。 “ \\”>删除并创建delete_discussion.php文件以运行更新查询

我认为这里最简单的选择是将删除按钮插入表单。

尝试将此表格添加到表中。 我正在将DiscussionID回显到复选框中,以便您可以区分表中的多个复选框:

<form method="post" action="">
     <input type="checkbox" id="removeCheckbox" name="removeCheckbox" value="<?php echo $row['discussionID']; ?>" />
     <input id="submit" name="submit" value="Submit" type="submit" />
</form>

然后在您的PHP中,使用复选框的值更新数据库:

<?php 

if (isset($_POST['removeCheckbox'])) {
    $checkboxValue = $_POST['removeCheckbox'];
    mysql_query("UPDATE discussion SET publish='y' WHERE discussionID='$checkboxValue'");
}

?>

那有意义吗?

编辑:这现在应该工作! 还进行了更新,以包括Dan的建议。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM