Php mssql_escape保存双撇号
在将字符串插入数据库之前,我正在使用下面的函数对其进行转义。虽然它实际上将双撇号插入到数据库中,当我打印出来时,它仍然有双撇号。使用原始单撇号打印值的正确方法是什么Php mssql_escape保存双撇号,php,sql,sql-injection,apostrophe,Php,Sql,Sql Injection,Apostrophe,在将字符串插入数据库之前,我正在使用下面的函数对其进行转义。虽然它实际上将双撇号插入到数据库中,当我打印出来时,它仍然有双撇号。使用原始单撇号打印值的正确方法是什么 function mssql_escape($var){ if(get_magic_quotes_gpc()){ $var = stripslashes($var); } return str_replace("'", "''", $var); } 因为您使用的是参数化语句,所以不需要将单引
function mssql_escape($var){
if(get_magic_quotes_gpc()){
$var = stripslashes($var);
}
return str_replace("'", "''", $var);
}
因为您使用的是参数化语句,所以不需要将单引号对折。这是正确的做法,通常不会受到SQL注入攻击。如果要将SQL语句构建为单个字符串,只需将撇号加倍即可。我猜你不是。我正在使用以下命令:$value=mssql_escape($_REQUEST['value']);$query=“插入到表名(值)值(?)$params=数组($value)$stmt=sqlsrv_query($connection、$query、$params);如果($stmt==false){die(print_r(sqlsrv_errors(),true));}谢谢!我现在就实施这个。