關於pdo的一個疑問
PHP code
if (isset($_POST['loginName']) && isset($_POST['pwd']) && $_POST['action'] == 'submit') { $loginName = $_POST['loginName']; $pwd = $_POST['pwd']; echo $loginName.' '.$pwd; $sql = "SELECT COUNT(*) FROM tb_esq WHERE login_name = :loginName AND pwd = :pwd"; require_once ('conn.php'); $sth = $db->prepare($sql); $sth->bindParam(':loginName', $loginName, PDO::PARAM_STR, 25); $sth->bindParam(':pwd', $pwd, PDO::PARAM_STR, 25); $sth->execute(); $rowCount = $sth->fetchColumn(); var_dump($rowCount);//一直是0 $db = NULL; if ($rowCount == 1) { echo ""; } else { alert('使用者名稱或密碼錯誤!'); echo ""; }}
在提交了資料庫中存在的使用者名稱和密碼之後還是提示密碼錯誤,為什麼呢
------解決方案--------------------
先用普通查詢 看能否得到資料
PHP code
$sql = "SELECT COUNT(*) FROM tb_esq WHERE login_name = '$loginName' AND pwd = '$pwd'";$result = $db->query($sql);$row = $result->fetch(PDO::FETCH_ASSOC);print_r($row);