-3

編集 (13.07.10):

したがって、この本は単に Cookie とセッションの機能を説明したかっただけで、最後の例ではそれら 2 つを組み合わせました。しかし、機能的な観点からはあまり意味がありませんでした。最後の例は次のとおりです。

user_id を使用して Cookie をセットアップし、さらにセッション変数を user_id としてセットアップします。ブラウザを閉じるとセッション変数が削除されるため、Cookie が設定されているかどうかを確認し、設定されている場合は user_id をセッション変数にコピーして、ブラウザを閉じるよりも長くログインを保持します。

これは初心者向けの本であり、真に機能的/実用的な本ではありません。

編集完了

私は Head First PHP を読んでいます。この本では、ブラウザーを再度開いたときに、既存の Cookie 変数からセッション変数をリセットすることにより、Cookie とセッション変数の両方を使用する場合の永続性がいかに優れているかについて説明しています。

しかし、考えてみると、両方の Cookie を使用しているときに既に公開されている場合、Cookie に加えてセッションを再度使用する意味があるでしょうか? つまり、ここではセッション ID Cookie について話しているのではなく、Cookie 変数を直接セッション変数にコピーすることについて話しているのです。アドレスなどを取得することはありません。

4

1 に答える 1

2

Cookie はエンド ユーザーに表示され、ユーザーはそれらを変更できます。ユーザーが表示または偽造できないデータを保存する必要がある場合は、セッションを使用する必要があります。セッション データは、ユーザーの PC ではなく、サーバーに保存されます。セッションは、単一の Cookie (セッション ID) を使用します。これは、セッション ストアへのキーとして使用される単なるランダムな文字列です。ユーザーがそれを変更すると、ほとんどの場合、何にも一致しないキーになります。他のユーザーに使用されているセッション ID を推測するのは非常に困難な長さです。

すべてを暗号化することで Cookie を使用して同様の機能を実装できますが、それを処理するセッションを使用するだけでよいのに、なぜすべての作業を行う必要があるのでしょうか。唯一の理由は、サーバーが定期的にセッションをリセットし、それよりも長い永続性が必要な場合です。

于 2013-07-09T03:46:49.183 に答える