为什么mysql_real_escape_string
无法在MySQLi上运行?
当我使用MySQL时,我可以使用此代码。
$test = mysql_real_escape_string($_POST[test]);
但是当我更新使用MySQLi时。我试着用
$test = mysql_real_escape_string($_POST[test]);
但不行。
如何在mysql_real_escape_string
上使用MySQLi
?
如果无法在mysql_real_escape_string
上使用MySQLi
,我该如何保护SQL注入?
现在我用
$test = $_POST[test];
对于SQL注入来说非常糟糕。
答案 0 :(得分:2)
如何在mysql_real_escape_string
上使用MySQLi
?
答案:
OOP方法:
$test = $conn -> real_escape_string($_POST['test']);
程序方法:$test = mysqli_real_escape_string($conn,$_POST['test']);
您还在询问如何防止SQL注入
答案:如果您要使用mysqli_*
,那么您应该使用parameterized queries