2012-05-02 18 views
0

である私は私のウェブサイト上でユーザーを登録するためのフォームを使用していますし、私はそれにキャプチャセキュリティを持っています。すべてがうまくいきますが、私が直面している唯一の問題は、間違ったキャプチャを入力するか、何らかの形でページが更新された場合、ユーザーが入力したすべてのデータが消去されることです。私が達成したいものをが失敗

は、入力されたキャプチャが間違っていると、フォームが送信されても​​、フォームはキャプチャフィールドを除くで満たされたユーザーとしてそのまますべてのフィールドを持つべきであるということです。

どうすればいいですか?私のフォームは、HTMLであり、処理のページには、PHP

+1

私は 'isset'と' htmlspecialchars'または 'htmlentities'のいずれかへの呼び出しを追加することにより、以下の回答をすべて修正します。 – nickb

答えて

3

あなたは、フォーム入力のvalue属性を移入することができますです。

<input type="text" name="username" value="<?php 
    if (!empty($_POST['username'])) { 
    echo htmlspecialchars($_POST['username']); 
    }?>" 
/> 
+2

Hello XSSのセキュリティ上の脆弱性!システムの外部から生データを直接HTMLに入れないでください!したがって、各フォームフィールドのために、私は同じを適用することができる感謝:) – Quentin

+0

(ポストは+1今では、この問題を解決するために()oportunityの無履歴ウィンドウ内で編集)?? –

+0

@Quentin – Arihant

0

現在のページにフォームアクションを設定する必要があります。エラーがある限り、同じスクリプトが呼び出され、このスクリプトは他の回答に記載されているようにフォームの値を入力します。成功した場合にのみ、ユーザーを別のページにリダイレクトします。

+0

どうすればいいですか? – Arihant

+0

Uhm - "Affenformular"とドイツ語で、[ドイツ語Wikipedia](http://de.wikipedia.org/wiki/Affenformular)には素晴らしい説明があります。 – feeela

関連する問題