私はちょうどログインしているユーザーを覚えておく機能を書いています。それはうまくいくはずですが、なぜそれが機能しないのでしょうか?問題は、ブラウザの保存されたCookieを調べるときにCookieが作成されないということです。なぜこのrememberUser()関数は機能しませんか?
これは私が話している機能である:
function rememberUser($id) {
$mysqli = new mysqli('bla', 'blabla', 'blablablaa', 'blaaaaa');
if(mysqli_connect_errno()) {
echo "Connection Failed: " . mysqli_connect_errno();
exit();
}
$remember = md5(uniqid(mt_rand(),true));
$stmt = $mysqli->prepare("UPDATE USERS SET USER_REMEMBER_KEY = ? WHERE USER_ID = ?");
$stmt->bind_param('si', $remember, $id);
$stmt->execute();
setcookie("remember", $remember, time()+60*60*24*30, "/", "www.someSite.com", false, true);
}
私はクエリが正常に動作してUSER_REMEMBER_KEY
がDBに細かい格納されていることを言及する必要があります。問題は本当にクッキーだと私は思う。
誰でも問題が表示されますか?前もって感謝します。
UPDATE
:私はGoogle Chromeのベータバージョン19.xx
だと思いますか?あなたはそれをチェックしましたか? –
もちろん、キーが生成されたことを確認するために私のDBをチェックしました。そして私が質問で述べたように私はブラウザに保存されたクッキーをチェックしましたが、そこにはありません。私は私の説明がかなり明確だと思った:) – Loolooii
あなたはSet-Cookieレスポンスヘッダーをチェックできますか?ブラウザの開発者ツールを使用してヘッダーを表示できるはずです。問題の推測:ドメインが間違っているか、既にコンテンツを出力しているため(それ以上のヘッダーを送信できません)。 – Nick