0

私は必死にブラウザウィンドウ間で変数を渡そうとしています。新しいウィンドウで別のページ (another.php) を開く php ページ (test.php) があります。また、暗号化/復号化してWITH暗号化パスワードを渡す必要がある変数もいくつかあります。次のようなセッションを作成しました。

session_start();
$_SESSION['test'] = array(
    'var1' => $encryption_password, 
    'var2' => $some_encrypted_stuff
);

もちろん、新しいウィンドウの「テスト」セッションではNULLです。さまざまなオプションを試しましたが、すべて失敗しました。ファイルを作成してそこにデータを書き込むことはできますが、これは安全ではないようです。

この問題の実際の例を教えてもらえますか? 自分で何かを見つけることはできません。

アップデート

OK、私の主なタスクは、ある php ファイルで変数を暗号化し、別のファイルで復号化することです。条件が 1 つあります。暗号化パスワードは、最初の保存場所から 2 番目の php ファイルで読み取ることはできません。最初の php ファイルのみです。

4

1 に答える 1

0

私に関する限り、ファイルに書き込むことはおそらく良い方法ではありません。変数の取得を達成しようとしていますが、それ以上のことはありません。テスト変数が null である理由がわかりません。このテストを自分で作成しようとしたところ、すべてに問題なくアクセスできました。提供したコードは、セッション変数にデータを書き込む必要があります。まず、最初のスクリプトのどこかでセッションを強制終了していないことを確認してください。次に、コードを 2 回、3 回チェックして、セッション変数にアクセスします。コードを見ないとわかりにくいですが、2 ページ目からは、変数へのアクセスのスペルを間違えているか、セッションを再開するのを忘れているとしか思えません。 両方のファイルのコードは次のとおりです。

先頭ページ:

<?
session_start();
$_SESSION['test'] = array('var1' => "somevalue", 'var2' => "someothervalue");

?>
<a href='other.php'>Go</a>

2 ページ目:

<?
session_start();
var_dump($_SESSION['test']);
?>

それは私にとってはうまくいきます-完全なセッション変数が吐き出されます。試してみて、まだ問題が発生している場合はお知らせください (何が起きているのかをよりよく理解できるように、コードを追加してください)。幸運を!

于 2012-09-28T17:10:03.397 に答える