刷新php并处理一个我遇到问题的简单程序。我似乎无法弄清楚如何删除mysql行。我将我的脚本链接到一个pastie文档中,这样你就可以看到我如何设置它了。
我不熟悉AJAX或Javascript ..所以我只是将删除按钮作为一个表单。如果我能让它发挥作用,我现在想保持这样。
答案 0 :(得分:2)
变化:
mysql_query("DELETE FROM name WHERE name=.'$del'.");
为:
mysql_query("DELETE FROM name WHERE name='".$_POST['$del']."'");
监守:
你应该摆脱它。在查询内部,dot用于字符串连接
2.您想使用$_POST['$del']
的值 - 未设置参数$del
<强>更新强>
<input type="hidden" name="del" />
更改为:<input type="hidden" name="del" value="theNameYouWantToDelete"/>
mysql_*
- 它已被弃用且易受sql注入攻击,请改用PDO或MySQLi。答案 1 :(得分:0)
您没有正确连接$del
变量。你可以简单地使用:
mysql_query("DELETE FROM name WHERE name='$del'");
此外,您需要在$del
查询之前设置DELETE
。在您尝试使用该变量之前尚未声明该变量,因此它将为null
。
答案 2 :(得分:0)
在第30行,您有两个名为del
的输入,第二个不包含要删除的名称
echo '<form id="del" method="post"><input type="submit" name="del" value="X" /><input type="hidden" name="del" /></form>';
需要更改为 -
echo '<form id="del" method="post"><input type="submit" name="del_submit" value="X" /><input type="hidden" name="del" value="'.$del.'" /></form>';
然后将第12-13行更改为
if (isset($_POST['del_submit'])) {
mysql_query("DELETE FROM name WHERE name='".$_POST['del']."'");
请注意,mysql_
函数已弃用,并且您需要使用sql注入。