2011-09-22 10 views
0

私はフォーム入力を持って、別のページに送信してチェックして検証します。エラーが発生した場合は、フォームを入力したページにユーザーをリダイレクトする必要があります。 私は入力を補充するために$ _POSTの内容を送り返して、手動で補充しないようにする必要があります。 どうすればいいですか?

1)変数をGETとしてPHPスクリプトをURLにフォームの値で、フォームに戻っページにリダイレクトしておいてください。

答えて

1

は、ここでは、2つのオプションがあります。フォームを補充するためにそれらを使用することができます。

2)jQueryを使用してPOSTリクエストを送信するには、ユーザーがページを離れなくてもかまいません。参照:http://api.jquery.com/jQuery.post/これにより、PHPスクリプトでユーザの入力を確認し、入力が有効な場合にのみそれらのユーザをリダイレクトすることができます。これにより、フォームを補充する手間が省けます。あなたはこのようにそれを使用することができます:

$.post("myphpscript.php", 
     { someData: someValue, someMoreData: anotherValue }, 
     function(returnData) { 
     // do stuff here on return 
     }); 

myphpscript.phpでは、$ _POST [ "someDataが"]と$ _POST [ "someMoreData"]としてポスト値を得ることができます。この関数は、PHPスクリプトが返ってくるときの動作で、returnDataはPHPスクリプトが返すものです。

+0

マイクありがとうございます。最初の選択は便利ではありません。なぜなら、$ _POSTの内容にはパスワードが含まれているからです。返信しないようにします。私は2番目のソリューションを使用します... – Nashwan

+0

それは価値があるため、ほとんどのウェブサイトはパスワードフィールドを補充しません。 –

+0

また、この回答が好きな場合は、左側のチェックマークをクリックして回答としてマークしてください。 –

0

POST値をチェックし、無効な入力である場合は、元のページに戻り、入力フィールドにPOST値を入力する必要があります。 POST-VARが設定されている場合、それはPOST-VARの値に、入力フィールドの値を設定し、そうであれば

<input type="text" value="<?php echo (isset($_POST["text"] ? $_POST["text"] : "") ?> /> 

このチェックは、そうでなければ空に値を設定

0

アン優れた回答の代わりに、sessionにこれらの値を格納し、そこからアクセスすることができます。

関連する問題