php表單后數(shù)據(jù)丟失 php表單后數(shù)據(jù)丟失了

為什么PHP的get提交表單數(shù)據(jù)多時會遺失許多數(shù)據(jù)

因為url有長度限制。不同的瀏覽器限制也是不一樣的。

公司主營業(yè)務(wù):網(wǎng)站制作、成都網(wǎng)站設(shè)計、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)公司推出柳州免費做網(wǎng)站回饋大家。

尤其是數(shù)據(jù)中存在中文的時候。轉(zhuǎn)碼后的中文字符非常多。

大數(shù)據(jù)量使用get傳遞,可能短時間沒問題,但隨時有可能發(fā)現(xiàn)意想不到的問題。始終存在不確定性。

所有當(dāng)數(shù)據(jù)量比較大的時候,應(yīng)該使用post傳遞比較穩(wěn)妥。

PHP表單提交后無法獲得數(shù)據(jù)

你訪問的是文件路徑,并不是服務(wù)地址;

你訪問Localhost或127.0.0.1,具體要看你指向的目錄

thinkphp點擊瀏覽器回退按鈕表單數(shù)據(jù)就沒了

禁用瀏覽器后退按鈕

問題描述:比如有一個在線測試的頁面,當(dāng)用戶提交頁面之后,調(diào)到呈現(xiàn)測試結(jié)果的頁面(這個頁面中會給出參考答案之類的),這個時候就不能讓用戶再后退到之前的測試頁面進行重新做題,然后提交了。有人可能會說,將用戶做兩次這樣的情況放到服務(wù)器端的業(yè)務(wù)部分進行驗證不就行了嗎?這樣是可以的,但是卻增加了服務(wù)器端的負擔(dān)(要先去數(shù)據(jù)庫中查找相應(yīng)的記錄,然后再判斷)。我們想著是將這個功能盡量轉(zhuǎn)移到客戶端去做。下面是一些方法:

(1)參考文獻()

scriptlanguage="JavaScript"

javascript:window.history.forward(1); //我目前先用著這個

/script

利用JS產(chǎn)生一個“前進”的動作,以抵消后退功能,這種方法應(yīng)該是最簡潔的,并且不需要考慮用戶連點兩次或多次“后退”的情況,缺點是當(dāng)用戶端禁用了JavaScript之后即失效。

(2)

AHREF="logout.do"onclick="javascript:location.replace(this.href); event.returnValue=false;"

Logout(Back Disabled)

/A

這種方法用鏈接頁面的URL替換了當(dāng)前的歷史紀錄,這樣瀏覽歷史記錄中就不會有本頁面,后退按鈕將不能回到本頁面。用戶點擊“Logout”鏈接注銷并執(zhí)行新頁面,這時當(dāng)用戶點擊“后退”按鈕將不能回到本頁,而是回到在本頁之前打開的那個頁面。

也就是說,這種方法清除的是最后一個訪問歷史記錄,而不是全部的訪問記錄,這是該方法的一個缺點,當(dāng)然可以在每一個業(yè)務(wù)頁面都添加這段代碼作為保護。另外,和上一種方法相同,當(dāng)用戶端禁用了JavaScript之后即失效。

3、

scriptlanguage="JavaScript"

functionlogout()

{

window.close(true);

window.open("logout.do");

}

/script

buttononClick="logout()"Logout/button

這種方法比較偷懶,關(guān)掉瀏覽器再重新開,經(jīng)過我的測試在視覺上幾乎感覺不出來延時,同時又保證了后退按鈕不可用(新窗口瀏覽器后退按鈕為灰色),看起來似乎是個好方法,但缺點也比較明顯:

首先,關(guān)閉和重開的瀏覽器窗口大小可能不同,用戶可以明顯看出這一過程,并且在一定程度上影響操作。

其次,同上,這是一個JavaScript方法。

以上方法都是針對“后退”按鈕作出的反應(yīng),客戶端瀏覽器需要打開JavaScript代碼,下面嘗試從另一角度來解決這一問題:

4、禁止緩存

%

response.setHeader("Cache-Control", "no-cache");

response.setHeader("Cache-Control", "no-store");

response.setDateHeader("Expires", 0);

response.setHeader("Pragma", "no-cache");

%

這種方法使用服務(wù)器端腳本,強制瀏覽器重新訪問服務(wù)器下載頁面,而不從緩存讀取,結(jié)合strutsjsp頁面中的logic標簽實現(xiàn)重新定向。

以上各種方法都有一定的局限,雖然是一個小問題,可是考慮到頁面安全的因素,卻不得不重視。更多問題到問題求助專區(qū)()

php提交表單,點擊錯誤彈出框的確定按鈕之后,跳轉(zhuǎn)回原來頁面,怎樣保存原有信息?

可以將接收的數(shù)據(jù)再返回并填充表單,以下是一個網(wǎng)友的解決方法,貼出如下:

在開發(fā)過程中,經(jīng)常會出現(xiàn)表單出錯而返回頁面的時候填寫的信息全部丟失的情況,為了支持頁面回跳,可以通過以下兩種方法實現(xiàn)。

1.使用header頭設(shè)置緩存控制頭Cache-control。

header('Cache-control: private, must-revalidate'); //支持頁面回跳

2.使用session_cache_limiter方法。

session_cache_limiter('private, must-revalidate'); //要寫在session_start方法之前

下面的代碼片斷可以防止用戶填寫表單的時候,單擊“提交”按鈕返回時,剛剛在表單上填寫的內(nèi)容不會被清除:

session_cache_limiter('nocache');

session_cache_limiter('private');

session_cache_limiter('public');

session_start();

參考地址:

當(dāng)前題目:php表單后數(shù)據(jù)丟失 php表單后數(shù)據(jù)丟失了
文章地址:http://muchs.cn/article32/doocdsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站改版、云服務(wù)器、網(wǎng)站內(nèi)鏈、App開發(fā)、品牌網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司