2012-01-04 22 views
18

私のアプリケーションのセッションIDがあります。今私は、このセッションIDを使用してすべてのセッション変数を取得したい。セッションIDを使用してセッション変数を取得する方法

私は<?php echo session_id()?>を使用してセッションIDを取得しましたが、このセッションIDを使用してすべてのセッションオブジェクト値を取得する方法はありますか?

+1

つだけ答えがSESSION_IDを使用して、セッションデータを取得する方法を述べています。 –

答えて

51

php.netに従って:既存のセッションIDを第三者に漏洩させる方法はいくつかあります。リークされたセッションIDにより、第三者は特定のIDに関連付けられたすべてのリソースにアクセスできます。まず、セッションIDを持つURL。外部サイトにリンクすると、セッションIDを含むURLが外部サイトの参照元ログに保存される可能性があります。第二に、より積極的な攻撃者がネットワークトラフィックを聞く可能性があります。暗号化されていない場合、セッションIDはネットワークを介してプレーンテキストで流れます。ここでの解決策は、サーバーにSSLを実装し、ユーザーに必須のものにすることです。

これは、セッションIDはどのように持っていますが、スクリプトにアクセスできないのですか?

に関係なく、セッションIDを設定してから開始してから、データにアクセスする必要があります。

session_id($whatever_id_you_have); 
session_start(); 
echo $_SESSION['somekey']; 
+6

+1この答えは、session_idを使ってセッションデータを取得する方法を示しています。 –

+1

session.use_strict_modeが1またはtrueに設定されている場合、session_id($ sid)を使用して現在のセッションのセッションIDを設定することはできません。 http://php.net/manual/en/function.session-id.php –

2

var_dump($_SESSION);現在のセッションの内容が表示されますので、通常の配列と同じように値にアクセスできます。

+0

しかし、私はスクリプトを編集することはできませんし、セッションIDだけを持っています。どのようにセッションを取得するかvarialbes –

1

あなたは、このいずれかを使用して、すべてのセッションの値を確認することができます。..

print_r($_SESSION); 
関連する問題