0
4

4 に答える 4

4

すぐに期限切れになるようにCookieを設定しています。

setcookie("edgeUser", $_POST['userName'], time()+0);

に設定します

setcookie("edgeUser", $_POST['userName'], time()+($howLongItWillLast));

編集:Sudhirは、次のページが読み込まれるまで利用できないことも正しく指摘しています。ドキュメントから:

Cookieが設定されると、次のページの読み込み時に$_COOKIEまたは$HTTP_COOKIE_VARS配列を使用してCookieにアクセスできます。

于 2012-08-22T09:17:21.387 に答える
2

Cookie が設定されると、次のページの読み込み時に $_COOKIE を使用してアクセスし、次のように Cookie を設定してみてください。

setcookie("edgeUser",  $_POST['userName'], time()+3600);  /* expire in 1 hour */
于 2012-08-22T09:19:03.710 に答える
0

(エラーからの)問題は、$_POST['userName']または$_COOKIE['edgeUser'](エラーが発生した行に応じて)未定義のようです-つまり、設定されていないことを意味し、実際にCookieを設定していることを確認すると、未定義のユーザー名。取得していることを確認してください。isset()

また、エコーする前に Cookie の有効期限が切れる可能性もあります。その場合は、Fluffeh のソリューションを使用してください。

于 2012-08-22T09:17:50.230 に答える
0

あなたはそれを設定し、瞬時に削除します。「ユーザーがセッションを閉じたときに削除」したい場合は、使用する必要があります$_SESSION['edgeUser'] = $_POST['userName'];

于 2012-08-22T09:18:46.077 に答える