我可以删除只有一个词的条目,例如“番茄”或“土 bean ”。 无法删除包含多个词的条目,例如“南瓜汤”。
这是为什么?
这是我的 PHP:
<?php
if(!empty($_POST['event_name_box']))
{
$del_event=$_POST['event_name_box'];
$sth = $conn->prepare("DELETE FROM event WHERE event_name=:del");
$sth->execute(array(':del'=>$del_event));
header( "Refresh: 0;" );
}
?>
这就是我在下拉列表中加载值的方式:
<select name="event_name_box" value="event_name_box" style="width:220px; padding-left:40px;font-size:18px;font-family:Roboto;">
<?php
$sth = $conn->prepare('Select event_name From event');
$sth->execute();
$data = $sth->fetchAll();
foreach ($data as $row ){
if($row['event_name']!="")
echo " <option id=\"EventName\" name=\"EventName\" value=".$row['event_name'].">".$row['event_name']."</option>";
}
?>
</select><br>
<input type="submit" name="submit" style="width:50%;padding:10px" value="Delete"</input>
最佳答案
问题出在您的 HTML 中(特别是 <option>
标签)。您的值未被引用,因此空格打破了 POST 中发送的值。将您选项上的 echo 更改为如下所示:
echo '<option value="' . $row['event_name'] . '">' . $row['event_name'] . '</option>';
(您也不应该在 name
标签上使用 id
和 <option>
。)
关于php - 无法从值包含中间空格的表中删除条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37495549/