【发布时间】:2012-10-16 20:59:09
【问题描述】:
有人可以告诉我如何使用 PDO 将我当前的 UPDATE tablename SET column 转换为安全可靠的语句以防止 SQL 注入吗?我试图更好地理解绑定和 PDO,但在使用 PDO 进行设置时遇到了麻烦。这是我目前拥有的常规 msqli
<?php
session_start();
$db = mysqli_connect("hostname", "username", "password", "dbname");
$username = $_SESSION['jigowatt']['username'];
mysqli_query($db, "UPDATE login_users SET Points=Points+15 WHERE username='$username'");
?>
【问题讨论】:
-
您也可以使用程序方式进行保护..
-
您可以修改手册页中的第一个示例(或示例 #3):php.net/manual/en/pdo.prepared-statements.php
-
我会再看一遍,谢谢:)
-
假设用户名是字母数字,并且您将用户名放入会话中并且它不是某种用户输入,这里没有注入的机会。
标签: php mysql pdo mysqli sql-injection