在登录脚本中放置password_verify的位置?
另一个晚上,另一个问题!
我创建了一个登录页面,如果密码是纯文本,它可以正常工作。
我遇到的问题是我的注册表单使用password_hash为表输入加密密码。
我目前的脚本如下。
注册脚本
$password = password_hash($_POST['password'], PASSWORD_DEFAULT);
登录脚本
<?php
session_start();
if(isset($_POST['email'], $_POST['password'])){
require('../../../private_html/db_connection/connection.php');
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$query = $conn->prepare("SELECT * FROM user_accounts WHERE email=:email AND password=:password");
$query->bindParam(':email', $_POST['email']);
$query->bindParam(':password', $_POST['password']);
$query->execute();
if($row = $query->fetch()){
$_SESSION['email'] = $row['email'];
$_SESSION['first_name'] = $row['first_name'];
header("Location: ../../myaccount/myaccount.php");
}
else {header("Location:../../login/login.php ");}
}?>我对这个有几个问题:
我password_verify在哪里放入登录脚本?
$_SESSION['xxx'] = $row['xxx'];在“我的帐户”页面上不必输入多个来显示用户详细信息,如何使用$results = $stmt->fetch(PDO::FETCH_ASSOC);我读过的方法?
提前谢谢了,
CyrilWalrus
郎朗坤