簡體   English   中英

表單提交但我不知道如何或為什么?

[英]Form submitting but I don't know how or why?

我制作了一個普通的 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: ".$_SERVER['HTTP_REFERER']);

處理形式

如果您在提交一次后刷新表單,該表單將再次提交。 (瀏覽器會警告你,“你確定要再次提交頁面嗎?”——不是嗎?)刷新實際上是“重復上一個請求”。

如果您認為在您的 web 應用中可能出現這種情況,您將不得不處理重復的請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM