私はログインスクリプトを取得するためにしばらく試してきましたが、私はこの問題を見つけることができませんでした。 、私はまだ素敵エラー500PDOP/PHP LoginScriptはMAMPを使用してエラー500で終了します
任意のアイデアを取得してしまう形に私が入力正しい資格情報をかどう
は、それは問題ではありませんか?
DB接続目的球:
function db_connect() {
私はこのコラムを移動する場合 - >
$server = 'localhost';
$uname = 'root';
$passw = 'password';
$datab = 'database';
/* check connection */
try{
$conn = new PDO("mysql:host=$server;dbname=$datab;", $uname, $passw);
} catch(PDOException $e) {
die("Connection failed: " . $e->getMessage());
}
< ---
return $conn; /added this as suggested, still returns NULL.
}
ログインファイル:
include('../lib/functions.php'); //This is correct!
db_connect();
<は - HERE、それは動作します - 以前>
は、レジスタ間、私のパスワードハッシュが故障した問題があったのでpassword_verify($_POST['password'], $results['passw'])
も常に正しい入力でfalseを返す、効果がなかったです。
if(!empty($_POST['username']) && !empty($_POST['password'])):
$records = $conn->prepare('SELECT uname,passw FROM users WHERE uname = :user AND passw = :pass');
$records->bindparam(':user', $_POST['username']);
$records->bindparam(':pass', $_POST['password']);
$records->execute();
$results = $records->fetch(PDO::FETCH_ASSOC);
if(count($results) > 0 && password_verify($_POST['password'], $results['passw']) && $_POST['username'] == $results['uname']) //Also tried removing the &&-->username area incase two and statements were wrong without any luck {
die('It works!');
} else {
die('OR NOT!');
}
endif;
エラーコード500は、サーバーエラーを意味します。例えば。あなたのPHPスクリプトで。 PHPのエラーログファイルを確認してください。 (php.ini参照) – paskl
'db_connect()'は何も返しません!! – Saty
あなたのPHPコードで予期しないエラーが発生したときにまず必要となること:httpサーバのエラーログファイルを見てください。ここでは、実際に_guess_するのではなく、問題が何であるかを簡単に_read_できる場所です。 – arkascha