php頁面刷新提交
Ⅰ html頁面按鈕,執行php文件,並2秒後刷新本頁一次.
用js里的ajex配合setTimeOut函數,可以實現定時刷新網頁的部分內容,也可以全部刷新
Ⅱ php提交表單
刷新的時候當然會重新POST,只要用戶按F5之前提交過一次,那麼他在輸入部分數據以後,如果按F5,那麼會重新執行一次上次的提交,而不理睬當前輸入的部分數據。
一般說來,在數據提交的頁面不能使用返回和刷新等功能,應該在頁面上進行醒目標記,教育用戶。
要想你的網頁與眾不同--刷新不會重新提交,那麼你可以在頁面上弄一個隱藏的IFRAME,FORM提交的目標指向這個IFRAME,而由IFRAME調用JS代碼在主頁面描述提交結果,這樣的頁面刷新的時候就等於新進入。
大致的結果如下:
<div id=result_div></div>
<form method=post target=post_frm>.....</form>
<iframe name=post_frm style='display:none'></iframe>
<?php
if (isset($_POST['submi11t'])==TRUE)
{
$result='';
if (提交數據檢查不通過) $result.='提交數據不合格!';
else if (數據保存成功) $result.='數據保存成功。';
else $result.='數據保存失敗!';
echo "<script language=javascript>parent.result_div.innerHTML='$result';</script>";
}
?>
Ⅲ 在用php做小頁面,有個表單.每次刷新頁面時老是提示不要重復提交表單怎樣去掉這個提示啊
首先,為什麼會出現這個問題?假設你在a.html有一個表單<form>....</form>,首先我們要理解瀏覽器這樣做的用意:如果我們刷新這個網頁,你表單填寫的內容可能會被reset。如果你的表單是長長的填寫了很多內容,你當然不希望重頭再來,就這點而言,瀏覽器的提示沒有惡意。我們要做的就是告訴瀏覽器:放心刷新。這也是解題的思路:在刷新時把表單撤了。當然,我的情況可能和你的不同,我寫的是彈窗式的登錄頁面,所以,我用Jquery寫了個Load(「b.html」),b.html里只有一個<form>。這樣做就可以保證a.html里沒有<form>。只有你的網頁里有<form>,chrome就會提示「重新提交表單」。這個情況在IE,FF則不會出現。
這是我遇到的情況,希望對你有啟發。
Ⅳ 我用ajax向php頁面發送數據,結果返回到html頁面提交成功後頁面刷新了
在使用Ajax向PHP頁面發送數據時,如果遇到提交成功後頁面自動刷新的問題,可以嘗試將表單提交按鈕的type屬性從"submit"修改為"button",然後在按鈕的onclick事件中編寫Ajax方法來處理數據提交。這樣可以避免頁面因表單提交而自動刷新。
如果在使用Ajax提交數據後,發現頁面中某些數據未發生變化,需要檢查選擇器是否正確。通常情況下,使用id選擇器最為保險,因為它能唯一地定位到一個元素。如果需要使用class選擇器,確保在選擇器中添加了索引,例如:document.querySelector('.className').value。
在編寫Ajax方法時,可以參考以下代碼示例:
javascript
function sendAjaxData() {
var xhr = new XMLHttpRequest();
xhr.open("POST", "your_php_file.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
console.log(xhr.responseText);
}
};
xhr.send("data=" + encodeURIComponent(document.getElementById('inputId').value));
}
在這個示例中,`document.getElementById('inputId').value`獲取了id為`inputId`的輸入框的值,並通過`xhr.send()`方法發送給PHP文件處理。
確保在發送Ajax請求後,正確處理伺服器返回的數據,以便更新頁面上的相應內容。
總之,通過這種方式可以避免頁面因表單提交而刷新,同時也能確保頁面上的數據能夠正確更新。