这是我第一次在MySQL中设置数据库并使用它们,所以我将非常感谢任何帮助,因为我几个小时的在线搜索并没有帮助我解决这个错误。
我基本上在我的数据库中有一个表。机场: Title- 3字符& PublicKey机场名称- 100字符非空
我已经用php编写了一个网页,它应该允许我删除我的条目,这取决于我选择的条目。
简而言之,这是我的php:
$result = mysql_query("DELETE FROM airport WHERE Title=$Title")
or die(mysql_error()); 它给出了这个错误:
Unknown column 'ABC' in 'where clause'如果我在phpmyadmin中运行以下命令:
DELETE FROM airport WHERE Title=ABC它给出了这个错误:
Unknown column 'ABC' in 'where clause'如果我在phpmyadmin中运行它,它可以工作:
DELETE FROM airport WHERE Title="ABC"但是如果我在php代码中添加引号,页面就会死掉。有什么建议吗?
发布于 2012-03-31 10:13:53
由于您数据库的标题字段是varchar,因此最好使用单引号对$title进行编码,并使用mysql_real_escape_string清除不安全的数据库字符。像这样:
$result = mysql_query(sprintf("delete from airport where title = '%s'", mysql_real_escape_string($title));发布于 2012-03-31 10:11:59
您需要使用'ABC'对ABC进行报价
发布于 2012-03-31 10:14:30
你也可以转义为“如果你不想使用”,你也应该清理你在查询中使用的所有变量。
$Title = mysql_real_escape_string($Title);
$result = mysql_query("DELETE FROM airport WHERE Title=\"$Title\"");https://stackoverflow.com/questions/9952403
复制相似问题