以前,为了安全起见,我使用一般mysqli
查询在数据库中插入值,real_escape_string
但似乎每个人都使用准备好的语句来提高安全性。为了提高安全性并防止 sql 注入,我将用准备好的语句替换我的代码,但我想知道下面给出的准备好的语句有多安全。您能否提出更多改进以提高安全性?
$stmt = mysqli_prepare($DB_connection,"INSERT INTO `posts`(`example`, `example2`) VALUES ('$for_example',?)");
mysqli_stmt_bind_param($stmt, 's', $_POST['username']);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
我使用 POST 方法从表单中获取值并将它们添加到数据库中。用户可以通过sql注入替换数据库中的值吗?
感谢您提前提供任何帮助。