使用 htmlspecialcharacter 和单引号是否足以用于登录表单


Is using htmlspecialcharacters and single quotes enough for a login form?

>我有以下代码

$username=htmlspecialchars($_POST['username'],ENT_QUOTES);
$sql="SELECT * FROM user_account WHERE account_name='".$username."'";

这是否容易受到 sql 注入的影响。如果是这样,有人怎么能绕过这一点?

这样使用MySQLi

$username = mysqli_real_escape_string($con, $_POST['username']);
$con is your connection 

也阅读此内容

  1. SQL 注入保护 - 单引号
  2. 如何防止 PHP 中的 SQL 注入?

以及MySQLi相对于MySQL的优势