php が cookie を設定できない問題の解決策: 1. PHP プログラムの先頭で「ob_start();」を実行します; 2. サーバー時間を変更するか、cookie の寿命を延ばします; 3. 正しい設定を行いますスコープ; 4 、パラメーター化された URL を使用して Cookie 値などを渡します。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューター
こんな場合はどうすればよいですか? php は cookie を設定できません?
PHP プログラムは cookie を設定できません
1. PHP プログラムは setcookie を実行する前に出力を行います。
解決策:
setcookie の前のプログラムをチェックして、PHP コード
または:
プログラムの最初で ob_start() を実行します;
2. PHP Cookie の寿命は短すぎるため、有効になる前に消滅します
この問題を確認するには、PHP プログラムで time() を実行します。サーバー時間とローカル時間の差が生存時間を超えているかどうかを確認します。
解決策: サーバー時間を変更するか、時間を増やします。クッキーライフ。
3. PHP cookie のスコープが間違っています
まず、cookie のスコープを / に設定して、問題があるかどうかを確認します。問題が解決した場合は、正しいスコープに設定してください。
4. ユーザーは Cookie の使用を禁止されています
これはプログラムのせいではありません。ただし、パラメータ化された URL を使用して Cookie 値またはセッションを渡すことで解決できます。
5. その他の質問
6. 補足については 3 階の fjytzh に感謝します。この状況は古いプログラムでよく発生します。この効果は register_global=on と同等です。
多くのプログラム (フォーラムなど) は、$_COOKIE、$_GET、$_POST
の後に $_COOKIE の値を抽出します。 $_GET 、$_POST の値は設定されていません。
この種のことは比較的単純であり、これを防ぐ方法はありません。開発するときだけ注意してください。
$_COOKIE['XXXX']
7 を使用すると、もちろん後でアクセスできなくなります。最も愚かな質問です。#
## Cookie の値は次のとおりです。空です。これを使用せずにこれを行うにはどうすればよいですか? 私はそう言いました。PHP コード これには今まで気づきませんでした。 .もう 1 つ非常にばかげた質問があります。多くのプログラム (フォーラムなど) は、$_COOKIE、$_GET、$_POST の値を抽出します。その後、$_COOKIE、$_GET、$_POST、その他の値を追加します。未設定はなくなりました。もちろん、後で $_COOKIE['XXXX'] を使用してアクセスすることはできなくなります。これは、次のような場合に適しています。他の完全なシステムを変更する。 推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHP で Cookie を設定できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。