将mysql登录脚本转换为PDO

use*_*775 0 php mysql pdo login

我已经使用mysql写了一个功能登录脚本但是我现在被告知需要使用PDO完成,我有一个功能性的PDO连接

function getConnection(){
$userName = '*****';
$password = '*****';
$dbname = '******';
$db = new PDO( "mysql:host=localhost;dbname=$dbname", $userName, $password );
$db->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
return $db;
Run Code Online (Sandbox Code Playgroud)

但是我不知道如何将登录查询转换为PDO

if (isset($_REQUEST['attempt']))
{

$user = $_POST['user'];
$password = $_POST['password'];

$qry = mysql_query
("SELECT * 
  FROM subscriber 
  WHERE email = '$user' 
  AND password = '$password'") 
or die(mysql_error());

$total = mysql_num_rows($qry);

if ($total > 0)
{
    session_start();
    $_SESSION['user'] = 'yes';
    header('location: account.php');
    exit;
}
else
{
    // do nothing.
}
}
Run Code Online (Sandbox Code Playgroud)

任何见解/帮助将不胜感激,谢谢

egg*_*yal 6

浏览PDO手册.但是,为了让你开始:

$db = getConnection();
$stmt = $db->prepare("
    SELECT * FROM subscriber WHERE email = :email AND password = :password
");
$stmt->bindParam(":email"   , $user    );
$stmt->bindParam(":password", $password);
$stmt->execute();
$total = $stmt->rowCount();
Run Code Online (Sandbox Code Playgroud)