由于我的陈述一样防止SQL注入与PHP
"SELECT * FROM `box` WHERE `thing` = '{$variable}'
我能清理与单纯
$variable = str_replace("'","\'",$variable);
"SELECT * FROM `box` WHERE `thing` = '{$variable}'
将这项工作?我的主机不支持mysql转义,我不使用mysqli。
由于我的陈述一样防止SQL注入与PHP
"SELECT * FROM `box` WHERE `thing` = '{$variable}'
我能清理与单纯
$variable = str_replace("'","\'",$variable);
"SELECT * FROM `box` WHERE `thing` = '{$variable}'
将这项工作?我的主机不支持mysql转义,我不使用mysqli。
根据什么类作为查询有效的数据类型,通常可以逃脱:
function cleanVar($str){
$str = strip_tags(addslashes($str));
return $str;
}
我高度怀疑,您的主机不支持mysql_real_escape_string
功能。
$variable = mysql_real_escape_string($variable);
$sql = "SELECT * FROM `box` WHERE `thing` = '{$variable}'";
如果你确实尚未安装的MySQL,那么你可以使用此基础上RDBMS你的下面的转义功能之一是使用:
如果是Postgres的你可以使用pg_escape_string
。
讨厌重复自己,但是,再一次,试试这个:
PHP Intrusion Detection System
使用parametrized queries(PDO可能是你最好的选择)。
有你为什么不使用mysqli的具体原因是什么? – GolezTrol 2010-11-29 23:56:08
这是确定\t静态函数干净($ x)的 \t { \t \t $ X = str_replace函数( '\' '' '”,用htmlspecialchars($ x)的); \t \t回$ X; \t} – Macmee 2010-11-29 23:57:57
转到PDO - http://stackoverflow.com/questions/13569/mysqli-or-pdo-what-are-the-pros-and-cons - http://stackoverflow.com/questions/770782/moving - 从MySQL的到库MySQLi-或-PDO – 2010-11-30 00:48:13