我确实花了几个小时谷歌搜索和搜索,但我不知道我做错了什么。我正在使用 POST,我自己在 phpMyAdmin 中尝试了查询,并且它有效,但它在 PDO 中不起作用,我不知道为什么。当我使用 mysql_query 时它起作用了,但我想保护自己免受 SQL 注入。
这是我正在使用的代码:
<?php
if(isset($_POST['user']) and isset($_POST['pass'])) {
$name = $_POST['user'];
$pass = $_POST['pass'];
$db = new PDO('mysql:host=localhost;dbname=*****;charset=utf8', '*****', '*****');
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = $db->prepare("SELECT * FROM stored WHERE _User LIKE :username AND _Pass LIKE :password");
$query->bindValue(":username", $user, PDO::PARAM_STR);
$query->bindValue(":password", $pass, PDO::PARAM_STR);
$query->execute();
echo $query->rowCount();
}
?>