2012-03-29 8 views
0

私は私が何をしようとしているPHPの世界、 に新たなんだが、次のページへexample.php例1と言うことができますから、3つの変数を送信することです。私のためのPHPと3ページ目に同じ変数example3.php渡しPHP変数トラフanoutherページ

問題であり、$_POSTでそれらを掲示するとき、彼らはexample1.phpに表示されていると私は別の変数に割り当てて、再びそれらを投稿$ _POSTによってexample3.phpへ これはどのようにしてページ間をリダイレクトするのですか?send form method = "post"

echo "<meta http-equiv=Refresh content=0;url=example1.php>"; 

、それは毎回動作しません。しかし、ユーザーが「戻ってクリックしたときに、私はメソッド=「ポスト」

でそれらを送信する第二の形式で、すべてのブラウザで、クッキーを使用している私が試してみました'ボタンを押して、古いものがまだ保存されている新しいエントリを入力するなど、

誰かがURLに$_GETで送信するよう提案しましたが、機密データを送信しています。

私のアプリケーションは、検証が完了し、正しい場合に、外部委託されたデータベース(example.php)に接続する外部エンティティのメール登録です。変数は、ユーザーが彼の所在を示す別のページ(example1.php)電子メールとパスワード、そして3番目のファイル(example3.php)で入力されたすべての設定が処理されるため、最初のページから最後のページにデータを取得できません。

+1

*誰か$ _GETでURLをunに送信するように提案しましたが、機密データ*を送信しています。 * Post *は* get *より安全ではありません。 – Yoshi

+0

HTTP/1.1 307 [リダイレクトコード](http://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_Redirection)は、307リダイレクトで元のリクエストを繰り返す必要があります**同じ方法で**新しいURIに変換します。しかし、それはあたかも[セッション](http://uk.php.net/manual/en/book.session.php)があなたが探しているものであるかのように見えます。 – DaveRandom

+0

すべてのページは同じドメインにありますか?もしそうなら、PHPセッションを使ってリクエスト間にデータを保存することができます:http://www.php.net/manual/en/book.session.php – Ing

答えて

0
あなたは、次のコードで試してください

/** example.php */ 
* You must put on the very first line of you page 
*/ 
<?php session_start(); ?> 

// These codes can be anywhere after the above 
<?php 
    $_SESSION['varName1'] = 'Value 1'; 
    $_SESSION['varName2'] = 'Value 2'; 
    $_SESSION['varName3'] = 'Value 3'; 

    // You can test to see the result here: 
    echo 'varName1 Value: '.$_SESSION['varName1'].'<br />'; 
    echo 'varName2 Value: '$_SESSION['varName2'].'<br />'; 
    echo 'varName3 Value: '$_SESSION['varName3'].'<br />'; 
    // You can print anywhere after here or 
    // you can update their values up to you. 
?> 


/** example1.php */ 
* You must put on the very first line of you page 
*/ 
<?php session_start(); ?> 

// These codes can go anywhere in your page after above line 
<?php 
    // You can print the 3 values from example.php 
    echo 'varName1 Value: '.$_SESSION['varName1'].'<br />'; 
    echo 'varName2 Value: '$_SESSION['varName2'].'<br />'; 
    echo 'varName3 Value: '$_SESSION['varName3'].'<br />'; 
    // You can print anywhere after here or 
    // you can update their values up to you. 
?> 


/** example2.php */ 
* You must put on the very first line of you page 
*/ 
<?php session_start(); ?> 

// These codes can go anywhere in your page after above line 
<?php 
    // You can print the 3 values from example.php, example2.php 
    echo 'varName1 Value: '.$_SESSION['varName1'].'<br />'; 
    echo 'varName2 Value: '$_SESSION['varName2'].'<br />'; 
    echo 'varName3 Value: '$_SESSION['varName3'].'<br />'; 
    // You can print anywhere after here or 
    // you can update their values up to you. 
?> 
+0

これは完全にPHPセッションを使用してコード化されていません。格納し戻すために 'session_name()'、 'session_id()'を設定する必要があるかもしれません。上のコードはphpのセッションであなたのためのいくつかの手がかりになる可能性があります。 '$ _SESSION'変数すべてに対して' isset() '関数を使ってセッション変数をチェックする必要があります。 – Thavarith

+0

php sessionを使用すると、Webサーバーを保存するためのファイル(.txt)が1つ作成されるので、 'session_start()'で始まるリクエストを行うたびに、セッションファイルを開き、グローバル変数 '$ _SESSION'。詳細については、[PHP SESSION](http://php.net/manual/en/ref.session.php)または[セッション](http://php.net/manual/en/book.session)を参照してください。 .php) – Thavarith

+0

#Thavarith偉大なガイド、ありがとうございました 私はあなたのガイドは、それを動作させ、使用していることを伝えたいと思います session_unset(); session_destroy(); $ _SESSION = array(); session_start(); – skuli434

2

は多分最善の方法は、ページ上のページ1

session_start(); 
$_SESSION['yourvariable'] = 'foo'; 

session変数

を使用することです2

session_start(); 
$foo = $_SESSION['yourvariable'];//$foo = 'foo';