Chinaunix首页 | 论坛 | 博客
  • 博客访问: 474472
  • 博文数量: 51
  • 博客积分: 8010
  • 博客等级: 中将
  • 技术积分: 1235
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-12 10:47
文章分类

全部博文(51)

文章存档

2009年(13)

2008年(38)

我的朋友

分类:

2009-04-19 13:54:57


session_start();
/**
     * 检查是否被重复提交
     * 相同内容的表单在设定时间内只能提交1次
     * @param int $iTimeOffset
     * @return bool
     */
function checkFormSubmit($iTimeOffset=60){
    // 取得表单的标识
    $idForm = md5(serialize($_POST));
    // 是否需要表单提交检察
    $iFormCheck = true;
    if (isset($_SESSION['formSubmitCheck'])){
        // 删除过期的表单标识
        foreach (array_keys($_SESSION['formSubmitCheck']) as $val){
            if (time() > $val){
                unset($_SESSION['formSubmitCheck'][$val]);
            }
        }
    }else {
        $_SESSION['formSubmitCheck'] = array();
        $iFormCheck = false;
    }
    if ($iFormCheck == true){
        // 检查是否有重复标识的提交记录
        foreach ($_SESSION['formSubmitCheck'] as $val){
            if ($val == $idForm){
                return false;
            }
        }
    }
    // 保存表单标识
    $_SESSION['formSubmitCheck'][(time()+$iTimeOffset)] = $idForm;
    return true;
}

if (count($_POST) > 0){
    if (checkFormSubmit()===true){
        echo '表单提交成功';
    }else {
        echo '表单重复提交';
    }
}
?>


   
   
   
   

var_dump($_POST);
var_dump($_SESSION);
?>
阅读(1152) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~