下面是我一直试图用来从 mysql 数据库中删除一行的代码。我在论坛里找了很久,还没发现这个问题。我知道我的连接工作正常,因为我能够毫无问题地使用 INSERT INTO 命令。我确信很明显我对此很陌生,正在寻找简单的解决方案。
<?php
$_POST[title];
$jimmy = $_POST[title];
echo $jimmy; ## this echo is here to make sure I was getting form data sent over correctly
include("dogs.inc");
$cxn = mysqli_connect($host,$user,$passwd,$dbname)
or die("Couldn't connect to server");
$sql = "DELETE FROM ashly3 WHERE title = '$jimmy' " ;
mysqli_query( $cxn, $sql );
include("ashly.php");
?>
最佳答案
$jimmy = $_POST[title];
应该是
$jimmy = $_POST['title'];
但这并不是它不起作用的原因,PHP 应该通过警告为您修复该错误。
此外,从 $_POST
插入文本而不转义将会给 SQL 注入(inject)带来麻烦。想象一下,如果用户将 hello' OR 1
插入标题文本字段。使用http://phptutorial.info/?mysqli.real-escape-string
关于PHP 使用 DELETE FROM 删除 mysql 中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9434693/