2016-10-30 4 views
0

私は、次のコードを持っている:私は第二の条件で$タイトルを使用したいcondition1からcondition2への文字列の使用方法は?

<form action='' method='POST' id='form1'> 
    imdbcode : <input type='text' id='imdbcode' name='imdbcode' /><br/> 
      <input type='submit' name='submit' value='Get'/> 
</form> 
<?php 
if(isset($_POST['submit'])){ 
. 
. 
. 
$title = ... ; 


echo " 
<form action='' method='POST' id='form2'> 
      <input type='submit' name='Send' value='Send'/> 
</form>"; 
} 

if(isset($_POST['Send'])){ 

//I WANT TO USE $Title from condition1 

} ?> 

を。

最初の状態で$ titleを表示します!しかし、閉じた状態では印刷されません!

どうすればいいですか?

+0

'$ title'の値で2番目のフォームに隠しフィールドを追加するかセッションに保存します。 –

答えて

0

できません。

あなたはこの1提出する必要があるif(isset($_POST['Send'])) 入力する前に:

echo " 
<form action='' method='POST' id='form2'> 
<input type='submit' name='Send' value='Send'/> 
</form>"; 

いますが、これを提出する瞬間を、ページがリフレッシュされると$_POST['submit']が削除され、この変数なし$titleが存在しません。 。

これを修正するか、ページの次のリフレッシュまで$title値を有効にします。 $titleの値とform2を含める必要があります。

echo " 
<form action='' method='POST' id='form2'> 
<input type='hidden' name='title' value="$title"/> 
<input type='submit' name='Send' value='Send'/> 
</form>"; 

とするとき、ユーザは、あなたが送信ボタンの前に隠し入力を追加してみ

$_POST['title'] 
0

2つのフォームが異なるため、明示的に指定しない限り、フォーム間の接続はありません。

簡単な解決策は、単にフォームで隠しフィールドとしてあなた$titleをエコーすることができます。

if(isset($_POST['submit'])){ 
    $title = ... ; 
    echo " 
    <form action='' method='POST' id='form2'> 
      <input type='hidden' name='title' value='" . $title . "'/> 
      <input type='submit' name='Send' value='Send'/> 
    </form>"; 
} 

if(isset($_POST['Send'])){ 
    echo $_POST['title']; 
    // do other stuff 
} 

別の解決策は、セッションを使用することです:セッションを使用する場合には

if(isset($_POST['submit'])){ 
    $title = ... ; 
    $_SESSION['title'] = $title; 
    echo " 
    <form action='' method='POST' id='form2'> 
      <input type='submit' name='Send' value='Send'/> 
    </form>"; 
} 

if(isset($_POST['Send'])){ 
    echo $_SESSION['title']; 
    // do other stuff 
} 

を忘れないでくださいsession_startを使用し、おそらく2回目の提出の最後に$_SESSION['title']を設定解除します。

0
<form action='' method='POST' id='form2'> 
    <input type='hidden' name='text' value='<?php echo $title; ?> 
    <input type='submit' name='Send' value='Send'/> 
</form> 

を使用して、タイトルにアクセスできるのForm2を送信します。

関連する問題