2010-11-26 23 views
0

私は地元のウェブサイトでセッションの固定をしようとしています!PHPSESSID経由で取得

http://dev5.mysite.local/?PHPSESSID=abc123

$_COOKIE['PHPSESSID']abc123次のようになります:) 私が送信した場合、この要求があることを読みました!

なぜnullですか? (私はセッションのクッキーを削除した後に持っています)

getの変数をどのようにしてクッキーとして保存するのか分かりません!

+0

どこを読んだのですか?セッションIDをGET(http://www.php.net/manual/en/session.idpassing.php)経由で渡すことは考えていませんか?セッションIDは 'SID'(または' session_id () ')? –

+0

私はページを読んで、私はSIDを渡そうとしました。 なぜクッキーが無効になっている場合に限りSIDを渡すことができますか? Cookieが有効になっている場合、SIDは空で$ _COOKIE ['PHPSESSID']が入力されます。 クッキーが無効になっている場合にのみ、SIDがgetによって渡されたようです。 –

答えて

4

まず、現在のセッションID設定(つまり、session.hash_functionおよびsession.hash_bits_per_character)の構文で有効な場合、PHPはセッションIDのみを受け入れます。

しかし、受け入れてセッションIDの設定は、両方のURLとクッキーを経由して可能にしながら、あなたは(すなわちsession.use_trans_sidsession.use_cookiesが有効になっているとsession.use_only_cookiesが無効になっている)URLの中に有効なセッションIDを提供する場合は、PHPのデフォルトのセッションハンドラは、そのセッションを使用します。 IDは設定されませんが、セッションIDのCookieは設定されません。

したがって、no、http://dev5.mysite.local/?PHPSESSID = abc123を要求すると、対応するCookieが設定されません。

+0

私のパラメータは次のとおりです。 session.hash_function = 0 session.hash_bits_per_character = 5 session.use_trans_sid = 0 session.use_cookies = 0 session.use_only_cookies =オフ は、だから私は問題が= 0 session.use_trans_sidていると思い、右? php.iniにいくつのパラメータがありますか?すべてを知ることは不可能です! :) –

+0

@D。 Milito:3つのセッション(* session.use \ _trans \ _sid *、* session.use \ _cookies *、* session.use \ _only \ _cookies *)はすべて無効になっていますか?さて、セッションは全く機能しません。 – Gumbo

+0

申し訳ありませんが、session.use_cookies =オン.....私はsession.use_trans_sid = 1を設定しようとしますが、dev5.mysite.local /?PHPSESSID = abc123は機能しません! $ _COOKIES ['PHPSESSID'] = null –

関連する問題