0

PHPでセッション変数を次のように設定しています。

    $_SESSION['pass'] = $pass;

$passパスワードはどこにありますか。"test4;"左側のセッション変数は正常に機能しますが、驚いたことに$pass、右側もセッション変数のように見えることに気付きました。つまり、一度設定すると、$passどのページからでもエコーでき、私がセッションを破棄します。

何が得られますか?どうすればこれを防ぐことができますか?

ありがとう!

4

2 に答える 2

4

グローバル登録はおそらくオンになっています-これは大きなセキュリティリスクです!これが当てはまるかどうかを確認し、オフになっていることを確認してください。また、これは非推奨のメソッドです。

register_globalsが有効になっている場合は、php.iniでこの設定を変更するか、 .htaccessファイルに配置することでオフにできます。

php_flag register_globals off
于 2012-06-08T13:12:48.887 に答える
-1

セッションと$passを互いに等しくなるように割り当てています。使ってみてください

if(!isset($_SESSION['pass']))

検証したい情報があれば

于 2012-06-08T13:13:32.360 に答える