2011-11-14 12 views
0

前のページから$ _POST値を取得しようとしています。隠しフォームの値を無視して入力値を取得する

<form method="POST"> 
<input type="checkbox" name="hey"<?php if (isset($_POST['hey'])) echo " checked"; ?>> 
<input type="submit"> 
</form> 

し、任意の値が隠し形式で保管されなければならない、そしてそれはあなたがチェックを変更した場合、フォームの値が更新されないことになります:

<form method="POST"> 
<?php 
if ($_POST['hey'] == 'on') { 
?> 
<input type="hidden" name="hey" value="on" /> 
<?php 
} 
?> 
<input type="checkbox" name="hey"<?php if (isset($_POST['hey'])) echo " checked"; ?>> 
<input type="submit"> 
</form> 

この構造が原因に(奇妙に聞こえるかもしれとにかく、それが変更された場合、私は入力値を取得する必要があります、隠し値ではなく、すべての隠しフォームがソースに書き込まれる必要があります。何か案が?

+0

彼らは$ _POST配列になります –

+3

私はあなたにこれを助けることができたと感じますが、私はあなたの要件を理解するのが難しいです。これを説明することができます: 'そして、どの値も隠しフォームに保存しなければなりません。チェックを変更するとフォームの値が更新されません。' – xbonez

+0

入力タイプに違いはありません。同じようにタイプに関係なく –

答えて

1

複数を使用しています。つまり、2つ以上の変数があると仮定します。 2番目のページフォームに1つの非表示フィールドを設定するprevious_variables、前のすべての変数を名前付き、シリアル化、JSON文字列、フォームの送信時にJSONのシリアル化解除またはデコード、開始ポイントとして設定し、もっと実際に...

+0

それは動作します!ありがとう –

関連する問題