我的网站发生了一些奇怪的事情。一切工作完美,现在我得到这个错误,当我试图登录:
致命错误:调用第9行未定义方法PDO::select()
下面是我的代码:<?php
$db = new PDO('mysql:host=****;dbname=******;charset=utf8', '*****', '*****');
if($_SERVER["REQUEST_METHOD"] == "POST")
{
// username and password sent from Form
$myusername = $_POST['username'];
$mypassword = $_POST['password'];
$result = $db->select("SELECT userID FROM miembros WHERE user='$myusername' and pass='$mypassword' AND confirm IS NULL");
$row = $result->fetch(PDO::FETCH_ASSOC);
$count = $result->rowCount();
// code continues
?>
我在第9行和$db做错了什么?
您想使用PDO::prepare
准备语句,然后使用execute
$db = new PDO('mysql:host=****;dbname=******;charset=utf8', '*****', '*****');
if($_SERVER["REQUEST_METHOD"] == "POST")
{
// username and password sent from Form
$prepared = array(
'username' => $_POST['username'],
'password' => $_POST['password']);
$stmt = $db->prepare("SELECT userID FROM miembros WHERE user=:username and pass=:password AND confirm IS NULL");
$result = $stmt->execute($prepared);
$row = $result->fetch(PDO::FETCH_ASSOC);
$count = $result->rowCount();
}