私は、送信時に別のページに情報を送信し、そのページがデータを処理してデータベースに追加する通常のHTMLフォームを作成しました。しかし何らかの理由で、フォームが入っている最初のページをリフレッシュすると、その理由がわかりませんが、データベースにエントリが作成されています。フォームは送信されますが、方法や理由はわかりません。
これは、フォームのコードです:
<?php $owner = $_GET['user']; ?>
<h2 class="dotted"><?php _e('Add feedback for user','appthemes'); echo " - ".$owner;?></h2>
<form id='feedback' action='http://www.example.co.uk/add-feedback-response/?user=<?php echo $owner; ?>' method='POST' accept-charset='UTF-8'>
<fieldset >
<b>Your Username:</b> <?php echo $current_user->user_login; ?><br/><br/>
<b>Rating: </b>
<input type="radio" name="rating" value="positive" /> Positive
<input type="radio" name="rating" value="neutral" /> Neutral
<input type="radio" name="rating" value="negative" /> Negative<br/><br/>
<label for='item' ><b>Item bought:</b></label>
<input type="text" name='item' id='item' maxlength="500"/><br/><br/>
<label for='comment' ><b>Comment:</b></label>
<textarea name='comment' id='comment' maxlength="2500"></textarea><br/><br/>
<input type="submit" id="submit-button" value="Submit Feedback" />
</fieldset>
</form>
は、私が欠けているものはありますか?助けをありがとう
あなたがフォームを処理したら、リダイレクトするためにheader( "location:...")を使用してください。ダブルエントリーはありません – Ibu
あなたは '$ _GET'から入力してページに直接注入しますか?ハローXSS攻撃 – Quentin
データをPOSTしたページを再表示すると、これらのPOSTデータが再送信されます。 –