PHP防止post重復(fù)提交數(shù)據(jù)的簡單例子
在某帝國面試的時(shí)候問題了這個(gè)題: 怎么處理post提交重復(fù)的問題, 后來跟@暖陽交流,他說記錄時(shí)間,我沒有明白,我想的是用session在表單頁面記錄下,然后提交頁面判斷,如果相等則視為成功,并清空session,但有個(gè)問題是如果表單頁面是html的呢,乍辦?要不調(diào)個(gè)php驗(yàn)證的頁面?類似驗(yàn)證碼的功能. 還有的說用 header頭設(shè)置過期時(shí)間...但沒試.以下是我php寫的,經(jīng)測試可用.
<?php
//開啟session
session_start();
//如果有提交標(biāo)識(shí)
if(isset($_GET['action']) && $_GET['action'] === 'save'){
//如果有session且跟傳過來的值一樣才算提交
if(isset($_SESSION['__open_auth']) && isset($_POST['auth']) && $_SESSION['__open_auth'] == $_POST['auth']){
print_r($_POST);
$_SESSION['__open_auth'] = null;//清空
} else {
//走起
header("location: post.php");
}
exit();
}
//授權(quán)
$auth = $_SESSION['__open_auth'] = time();
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>post</title>
</head>
<body>
<form action="post.php?action=save" method="post">
<ul>
<li>
<input type="hidden" name="auth" value="<?php echo $auth;?>">
<input type="text" name="userName">
</li>
<li>
<input type="password" name="userpass">
</li>
<li>
<input type="submit" value="走起">
</li>
<li>
<?php echo time(); ?>
</li>
</ul>
</form>
</body>
</html>
- php中使用Curl、socket、file_get_contents三種方法POST提交數(shù)據(jù)
- php采用ajax數(shù)據(jù)提交post與post常見方法總結(jié)
- php curl模擬post提交數(shù)據(jù)示例
- 解析PHP 使用curl提交json格式數(shù)據(jù)
- PHP中如何判斷AJAX提交的數(shù)據(jù)
- php jq jquery getJSON跨域提交數(shù)據(jù)完整版
- php防止偽造的數(shù)據(jù)從URL提交方法
- php判斷文件上傳類型及過濾不安全數(shù)據(jù)的方法
- php過濾所有惡意字符(批量過濾post,get敏感數(shù)據(jù))
- PHP數(shù)據(jù)過濾的方法
- php 字符過濾類,用于過濾各類用戶輸入的數(shù)據(jù)
- PHP數(shù)據(jù)的提交與過濾基本操作實(shí)例詳解
相關(guān)文章
tp5(thinkPHP5)框架連接數(shù)據(jù)庫的方法示例
這篇文章主要介紹了tp5(thinkPHP5)框架連接數(shù)據(jù)庫的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了基于thinkPHP5框架連接數(shù)據(jù)庫的相關(guān)配置、數(shù)據(jù)讀取、模板渲染等操作技巧,需要的朋友可以參考下2018-12-12thinkPHP5框架實(shí)現(xiàn)多數(shù)據(jù)庫連接,跨數(shù)據(jù)連接查詢操作示例
這篇文章主要介紹了thinkPHP5框架實(shí)現(xiàn)多數(shù)據(jù)庫連接,跨數(shù)據(jù)連接查詢操作,涉及thinkPHP5框架數(shù)據(jù)庫配置、連接及各種常見查詢操作技巧,需要的朋友可以參考下2019-05-05php使用file_get_contents(‘php://input‘)和$_POST的區(qū)別實(shí)例對(duì)比
這篇文章主要介紹了php使用file_get_contents(‘php://input‘)和$_POST的區(qū)別實(shí)例對(duì)比,這個(gè)知識(shí)點(diǎn)是比較常用的,有需要的可以參考下2021-03-03laravel 去掉index.php偽靜態(tài)的操作方法
今天小編就為大家分享一篇laravel 去掉index.php偽靜態(tài)的操作方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-10-10Laravel框架控制器的request與response用法示例
這篇文章主要介紹了Laravel框架控制器的request與response用法,結(jié)合實(shí)例形式分析了Laravel框架控制器的request與response發(fā)送請(qǐng)求及響應(yīng)請(qǐng)求的相關(guān)操作技巧,需要的朋友可以參考下2019-09-09