1

このエラー メッセージが何度も表示されますが、その理由がわかりません。これはログイン スクリプトで、PHPASS を使用してログインする方法がわからなかったため、ここにフォームをコピーしました。これが私のコードです:

$email      = ($_POST['email']);
$pass       = ($_POST['pass']);

require 'connect.php';
require 'PasswordHash.php';
$hash = '*';
    $login = $con->prepare("SELECT password FROM basicuserinfo WHERE email=:email");
    $login->bindParam(':email', $email);
    $login->execute();
    $login->bind_result($hash);
    if (!$login->fetch() && $con->errno)
        die();
    if ($hasher->CheckPassword($pass, $hash)) {
        $what = 'Authentication succeeded';
    } else {
        $what = 'Authentication failed';
    }
    unset($hasher);
4

1 に答える 1

5

あなたが提供したリンクではMySQLi、MySQL 関連のタスクに接続を使用しています。メソッドbind_resultは、 のメソッドの 1 つですmysqli

これは、MySQL 接続のメソッドでは必要ありません。PDOの有効なメソッド/コンストラクターおよびクラスなどのリストを次に示します。


ここで代わりに使用する必要があるのは次のとおりです。

$hash = $login->fetchColumn();

wherefetchColumnは、結果セットの次の行から 1 つの列を返します。

于 2013-03-20T02:37:46.553 に答える