【发布时间】:2018-12-28 08:01:33
【问题描述】:
我创建了一个仅当字符串长度大于 0 时才更新的 UPDATE 语句。
一旦满足条件,我会尝试在我的 UPDATE 语句中转义引号。我一直在使用addslashes($name),但在这个新条件下addslashes 不再有效。
上一个:
$mysqli->query("UPDATE table SET name='".addslashes($name)."' WHERE id=1") or die($mysqli->error);
当前:
$mysqli->query("UPDATE table SET name=IF(LENGTH($name)=0, name, '$name') WHERE id=1") or die($mysqli->error);
我在哪里放置 addslashes() 以使此函数正确转义字符?这个函数甚至可以在 PHP 的这个特定 MySQL 语句中工作吗?
【问题讨论】:
-
您最好在 PHP 中执行此操作(检查字符串长度,如果不需要,不要运行更新)。也值得一看准备好的陈述。
标签: php mysql sql-update addslashes