0

簡単なログインを作成したいのですが、それは機能しますが、bind_param を使用すると、常に 0 行が表示されます。

コードは次のとおりです。

session_start();
include("config.php");
$email = $_POST['email'];
$password = $_POST['password'];

if ($sql = $mysqli->prepare("SELECT email FROM user WHERE email='?' AND password LIKE SHA1('?')")) {

    $sql->bind_param('ss',$email, $password);

    $sql->execute();

    $sql->store_result();

    $num = $sql->num_rows;

    $sql->close();

    if($num>0){
        echo "true";
    }else{
        echo "false";
    }
}

メールとパスワードの両方のフィールドを受信したことを確認しましたが、クエリは「?」ではなく手動で入力した場合にのみ結果を取得します。bind_param を削除します。

単純なことはわかっていますが、何が問題なのかわかりません。

前もって感謝します。

4

4 に答える 4