【发布时间】:2013-09-19 12:17:59
【问题描述】:
我想知道是否有任何方法可以检查更新查询是否已成功执行,否则我将执行插入查询。
$record = mysql_query("update table set a='$b', b='$c' where id = '$id' ");
echo $record; // returns always 1;
谢谢。
【问题讨论】:
-
您应该将 php 代码放在引号之外。试试这个
$record = $mysql_query("update table set a='".$b."', b='".$c."' where id = '".$id".' "); -
哦,我试过了,但它不起作用!!但感谢您的帮助!
-
使用准备好的语句可以解决您的问题。 通过使用外部变量构建 SQL 语句,您很容易受到 SQL 注入攻击。 此外,任何带有单引号的输入数据,例如“O'Malley”的名字,都会被炸毁您的 SQL 查询。请了解如何使用参数化查询(最好使用 PDO 模块)来保护您的 Web 应用程序。 bobby-tables.com/php 有示例可以帮助您入门,this question 有很多详细示例。