从mysql内容中删除包含内容的div

时间:2011-11-17 20:50:24

标签: mysql database html

我有这个代码从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。

我怎么能这样做,我不在乎如何。

感谢。如果信息太多,或者我问得太多,我很抱歉。

3 个答案:

答案 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");