我有这个代码从mysql数据库获取内容。
所以基本上,会发生的事情是数据库中的foreach行,它会创建一个包含内容的div。但是,我希望用户能够删除帖子,但我根本无法理解这样做。
这是代码:
while($row = mysql_fetch_assoc($query))
{
$contents= $row['contents'];
}
echo '<div class = "post" style = "margin-right: 300px;">'.$contents.'<br><p>DELETE -- HOW CAN I DO THIS??</p></div>';
基本上,它的作用是每次获取行的内容。但我希望用户能够点击删除它,并删除包含内容的div,并将其从数据库中删除。
我曾尝试删除div,但删除了所有div,而不仅仅是我点击的div。
我怎么能这样做,我不在乎如何。
感谢。如果信息太多,或者我问得太多,我很抱歉。
答案 0 :(得分:0)
您需要输出[删除]链接,将用户发送回服务器以实际执行删除。从MySQL删除将作为单独的请求发生。处理该请求的PHP代码必须构造一个正确的DELETE FROM表WHERE id = $ id类型的SQL语句,然后执行它。完成后,您必须刷新显示,以便不再列出该项目 - 最简单的方法是简单地重定向回您已有的页面。
答案 1 :(得分:0)
如果您向p-tag
添加一个名为“delete”的课程<p class="delete">DELETE -- HOW CAN I DO THIS??</p>
然后您可以删除这样的div,例如:
$(".delete").click(function(){ $(this).parent().remove(); });
注意:强>
您仍然需要一些额外的功能,例如AJAX调用,以从数据库中删除帖子,而不仅仅是从DOM中删除。
答案 2 :(得分:0)
我找到了该怎么做。
这是我做的:
while($row = mysql_fetch_assoc($query))
{
$contents= $row['contents'];
$contentID = $row['contentID'];
}
echo '<div class = "post" style = "margin-right: 300px;">'.$contents.'<br><a href = "delete.php?id='..$contentID'">X</a></div>';
在delete.php
我有这样的事情:
$id = 1;
mysql_query("DELETE FROM table_name WHERE $contentID = $id");