2011-11-08 15 views
2
I refをフィルエラーが発生した場合にはPHPでフォームデータを投稿することができますどのように

。私は連絡フォームを持っており、ユーザーは情報の束を入力し、あるフィールドが検証しないと、彼はすべてを失う。これをやめないようにするにはどうしたらいいですか?再充填投稿フォームデータ安全

私はこれを試してみましたが、私はそれが安全ではないどこかで読ん信じていました:

<input type="text" name="name" value="<?php echo $_POST['name']; ?>" /> 

答えて

5

1つの問題は、$_POST['name']"が含まれている場合は、その値が出て「エスケープ」とページ内容を書き換えることができるということです。

もう一つは、厳格なエラーでNoticeエラーがスローされます存在しない配列のインデックスへのアクセス、オンチェックということです。

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

私は個人的にZend FrameworkでZend_Formのように、フレームワークによってフォームの表示や検証を取り扱う推薦:

は、ここで再充填フォームデータの一の安全な方法です。 (フォームのものを使用するだけで、他のすべてを変更する必要はありません)安全で読みやすいコードを書くのがずっと簡単になります。

関連する問題