PHP Delete 无法正常工作

标签 php mysql sql-delete

谁能帮帮我。我下面的删除代码有效,但它删除的是最新的收藏夹文件,而不是所选的特定文件。这是代码:

while($row=$query->fetch())
{

$id=$row['id'];
$vid=$row['thread_id'];
$preview=$row['preview'];
$tt=$row['thread_title'];
$fav=$row['fav'];

$List.='<form action="" method="POST" id="postForm">
<div class="LISTT"><a href="VP2.php?id='.$vid.'">'.$preview.'</a><br/><label     id="pwords">'.$tt.'</label><br/>
<input type="submit" name="submit" value="Remove" id="DeleteButton"/>
</div></form>'; 

if(isset($_POST['submit']))
{
$query=$db->prepare("DELETE FROM favorite WHERE thread_id=:thread");
$query->execute(array(':thread'=>$vid));
}

}

最佳答案

您需要在您的表单中添加一个包含线程 ID 的隐藏表单字段,然后在您的表单处理程序中读取它,如下所示:

while($row=$query->fetch())
{
$id=$row['id'];
$vid=$row['thread_id'];
$preview=$row['preview'];
$tt=$row['thread_title'];
$fav=$row['fav'];

$List.='<form action="" method="POST" id="postForm">
<div class="LISTT"><a href="VP2.php?id='.$vid.'">'.$preview.'</a><br/><label id="pwords">'.$tt.'</label><br/>
<input type="hidden" name="thread" value="' . $vid . '" />
<input type="submit" name="submit" value="Remove" id="DeleteButton"/>
</div></form>'; 

if(isset($_POST['submit']))
{
$id = $_POST["thread"];
$query=$db->prepare("DELETE FROM favorite WHERE thread_id=:thread");
$query->execute(array(':thread'=>$id));
}
}

关于PHP Delete 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24789032/

相关文章:

php - 在字符串内的 while 循环内运行函数?

php - HTML 表单和文件元素

php - 将数据库中的项目显示到具有不同项目的不同数据的 ListView 中

java - 在 MySQL 中写入时间

mysql - SQL/MySQL 删除除其中 2 行之外的所有行

php - 我的自定义样式表入队功能不起作用

php - 干净且 "dirty"网址

c# - 查询优化或在 ViewModel 中的 DoWork 内缓慢填充 ObservableObject

php - 这个 PHP/MySQL 删除函数安全吗?

php - 删除行mysql php