<?php
/*
* PHP简单利用token防止表单重复提交
*/
session_start();
header("Content-Type: text/html;charset=utf-8");
function set_token() {
$_SESSION['token'] = md5(microtime(true));//可以做加密处理
}
function valid_token() {
$return = $_REQUEST['token'] === $_SESSION['token'] ? true : false;
set_token();//重新生成token
return $return;
}
//如果token为空则生成一个token
if(!isset($_SESSION['token']) || $_SESSION['token']=='') {
set_token();
}
if(isset($_POST['web'])){
if(!valid_token()){
echo "token 验证失败,请不要重复提交!";
}else{
echo '成功提交表单内容:'.$_POST['web'];
}
}else{
?>
<form method="post" action="">
<input type="hidden" name="token" value="<?php echo $_SESSION['token']?>">
<input type="text" class="input" name="web" value="http://www.youkuaiyun.com">
<input type="submit" class="btn" value="提交" />
</form>
<?php
}
?>
PHP利用token防止表单重复提交
最新推荐文章于 2021-03-10 19:30:29 发布