cullation一般的に、各ページの間に渡された一意の
セッションIDが追跡され、セッションIDを介してサーバー内のこのユーザーによって保存されたセッションを抽出することによって追跡されます。セッション ID を送信するには、主に 2 つの方法があります。
アウト アウト アウト セッション ID を URL に直接埋め込む Cookie ベースの方法を使用します。 phpセッション(写真、テキスト、ビデオ、ケースを含む)
セッションの実装では、通常はCookieに基づいており、クライアントによって保存されたセッションIDはCookieです。 。クライアントが Cookie を無効にすると、セッション ID を Cookie に保存できず、ページ間で受け渡すこともできなくなります。ただし、Linux
プラットフォームでは、クライアントが Cookie のステータスを自動的にチェックでき、システムはセッション ID を URL に自動的に追加して送信します。この機能は Windows システムでは使用できません。による初期化後、サーバーはセッション ID を保存する HTTP ヘッダーを自動的に送信します。クライアント コンピュータ上のクライアント Cookie。設定方法は以下のような感じです。1. Cookie を介してセッション ID を渡す クライアントが Cookie を禁止していない場合、PHP スクリプトの session_start()
関数
setcookie(session_name(), session_id(), 0, '/')
2 番目のパラメーターは session_id() 関数を呼び出し、現在のセッション ID を Cookie の値として返します。 session_id()
関数を呼び出すときにパラメータを指定して、現在のセッション ID を設定することもできます。
session.cookie_lifetime
オプションで設定された値によって渡されます。デフォルトは 0 で、ブラウザが閉じられるまでセッション ID がクライアントの Cookie に残り続けることを意味します。 2. URL 経由でセッション ID を渡します
クライアントのブラウザが Cookie をサポートしている場合は、セッション ID をブラウザに Cookie として保存します。ただし、ユーザーが Cookie の使用を無効にすると、Cookie としてのセッション ID がブラウザーに存在しないため、Cookie 情報はクライアントのリクエストに含まれません。 session_start()関数呼び出し時にクライアントブラウザからセッションIDをCookieとして取得できない場合、新たなセッションIDが作成され、ユーザーの状態を追跡できなくなります。 したがって、ユーザーがセッションをサポートする PHP スクリプトをリクエストするたびに、session_start() 関数はセッションを開くときに新しいセッションを作成するため、ユーザーのステータスを追跡する機能が失われます。 session_id()
函数时提供参数设定当前的Session ID。
第三个参数值为 0,通过在php.ini文件中由 session.cookie_lifetime
选项设置的值。默认为0,表示 Session ID 将在客户端的 Cookie 中延续到浏览器关闭。
第四个参数 “ / ”,也是通过PHP配置文件指定的值,在 php.ini 中由 session.cookie_path
セッションを追跡するための別のメカニズムが PHP で提供されます。クライアントのブラウザが Cookie をサポートしていない場合、PHP はクライアントのリクエスト URL を書き換えて、その URL に
セッション ID を追加できます。各ハイパーリンクの URL にセッション ID を手動で追加できます。この方法は多大な作業を必要とするため、通常はお勧めできません。その例のコードは次のとおりです: <?php
//开启 session
session_start();
// 在 URL 后面附加参数,变量名为session_name()获取的名称,值为session_id()获取
echo '<a href="test.php?'.session_name().'='.session_id().'">演示</a>';
?>
PHP プログラミングの入門からマスターまで
以上がPHPでセッションIDを渡す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。