我刚刚将代码从mysql
转换为mysqli
,并使用了Oracle的转换器:
https://wikis.oracle.com/display/mysql/Converting+to+MySQLi
根据Stack Overflow上的各种问题/答案,我的理解是,如果您使用mysqli
,则无需对输入进行清理。然而,似乎情况并非如此 - 即使我在mysqli
- 我仍然可以输入带有倒置逗号的内容,例如what's
并返回错误,因为它会尝试将'
之后的任何内容与我的其余代码合并。
我做错了吗?如果我在使用mysqli
之后仍需要清理输入值,我该怎么做?
更新
如果我在输入上运行这样的功能就足够了吗?
function sanitise($str){
$string = htmlspecialchars($str);
$string = mysql_real_escape_string($str);
return $str;
}