8

セッションで困っています。

ローカルの MAMP テスト サーバーで、次のようにします。

session_start( ); echo session_id( );

見栄えの良いセッションIDを取得します。

ただし、Web サーバーで同じことを行った場合、session_id から取得できるのは「null」だけです。session_start( ) からの戻りをテストし、セッションを使用してすべてが機能していますが、session_id( ) $SID と $PHPSESSID はすべて null です。

これは、セキュリティを強化するために意図的に隠されていますか? Flash が PHP 呼び出しを介してショッピング カートに変更を加え、ブラウザを使用して (セッションに保存されている) カートを反映できるようにしたいと考えています。

4

4 に答える 4

9

session_start() の戻り値が TRUE であることを確認してください。

スクリプトがブラウザに何かを出力する前に、必ず session_start() を呼び出してください。

Apache にセッション パスへの書き込みアクセス権があることを確認します。私のは /tmp です

于 2010-12-21T22:27:34.667 に答える
1

同様の問題がありました(session_id()返されました""、これがあなたの質問に関連していることを願っています)。対応するすべてのタブを閉じ、関連するすべての Cookie を削除してから、サイトを再度開いたところsession_id()、美しいハッシュ値が返されました。

于 2016-01-06T11:59:39.133 に答える
0

Windows でも同様の問題がありましたが、私にとっては、無効なパスが定義されているini設定session.save_pathが原因でした。

于 2021-10-22T17:08:45.093 に答える