ホームページ >バックエンド開発 >PHPチュートリアル >setcookieの使い方を教えてください
COOKIES を永続的に保存したい場合
setcookie を使用してそれを実現するには、expire に大きな値を与えることでしょうか?
また、1ヶ月保存したい場合は、60*60*24*30を30日として計算するだけですか、それとも正確な計算方法はありますか?
Cookie を永久に保存することはできません
あなたが話している正確な方法については、何を言っているのかわかりません。
何が言いたいかというと、
インターネット上のプログラムが 1 か月を保存するように設定されている場合、
30 日を表すのに大まかに 60*60*24*30 を使用するだけです
あるいは、30 日間の日数に基づいて計算されるということです毎月
でも、それは直接だと思います 30 日として忘れてください
はは
めまいがします。なぜそんなに心配するのですか。 。 。 。
めまいがする。なぜそんなに心配するのですか。 。 。 。
Cookie はクライアント側に保存され、ユーザーがキャッシュをクリアするとクリアされます。
そんなに悩むのは疲れませんか?
めまいがする。なぜそんなに心配するのですか。 。 。 。
Cookie はクライアント側に保存され、ユーザーがキャッシュをクリアするとクリアされます。
そんなに悩むのは疲れませんか?
それは大騒ぎすることではありません
私は PHP を学んだばかりです
それで私は笑った
答えは
好きです...
つまり、Cookie は永久に保存することができず、データを保存する必要があります。データベース内で。
Cookie ユーザー情報の ID を保存し、必要なときにデータベースから取得することができます。
便利で抜け穴がありません。
Cookie も保存します。
重要なデータは暗号化する必要があります
60*60*24*30 は式であり、渡される最終パラメータは 2592000 です
これは主に読み取りを容易にするために書かれています、1 時間で 3600 秒、24 時間で1 日、1 か月に 30 日。
おっしゃるとおり、実際の月あたりの日数を考慮すると少し面倒ですが、PHP で実際の月あたりの日数を取得できます
bool setcookie ( string name [, string value [, intexpire[,stringpath[,stringdomain[,bool secure]]]]] )
expire クッキーの有効期限。これは Unix タイムスタンプ、つまり Unix エポックからの秒数です。つまり、通常、time() 関数に秒数を加えて Cookie の有効期限を設定します。または、mktime() を使用してそれを実現します。 Time()+60*60*24*30 は、Cookie が 30 日後に期限切れになるように設定します。設定されていない場合、Cookie はセッション終了後に期限切れになります (通常はブラウザが閉じられます)
setcookie を 1 回実行した後の状況です。ユーザーがアクセスするたびに 1 回実行すると、永続的になるのではないでしょうか。
60*60*24*30 は式であり、渡される最終パラメーターは 2592000 です
これは主に読みやすさを目的として書かれており、1 時間は 3600 秒、1 日は 24 時間、1 か月は 30 日です。
おっしゃるとおり、各月の実際の日数を考慮すると少し面倒ですが、PHP で検索すれば各月の実際の日数を取得できます
私も 30 日が多いと思います。便利です。
bool setcookie ( string name [, string value [, intexpire [, string path [, string domain [, bool secure]]]] )
expire Cookie の有効期限。これは Unix タイムスタンプ、つまり Unix エポックからの秒数です。つまり、通常、time() 関数に秒数を加えたものが Cookie の設定に使用されます...
ログイン情報の保存に Cookie が使用される場合
setcookie が毎回設定される場合は、ログインして設定するのは
ログイン後に Cookie を書き込まなければならないのと同じです。
ログイン情報が有効であることを確認するときに Cookie も書き込めないのはなぜですか?
もちろん、通常は固定の日数を設定します。それ以外の場合は、月を 28 日または 30 日として扱います。 27 日であれば 28 日ではないでしょうか? 明らかにそうではありません。永続的な場合は 30 日という固定期間に設定する必要があります。データベース識別などの他の方法が使用されない限り。
function setCookies(name,value){ var name = "xifashui"; var Days = 30; //此 cookie 将被保存 30 天 exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name +"="+ escape(value) +";expires="+exp.toGMTString();alert("放入成功")}function getCookies(name){ var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); if(arr != null)alert(unescape(arr[2]));}