zoukankan      html  css  js  c++  java
  • PHP防止页面刷新、重复提交数据

    PHP防止页面刷新、重复提交数据

    (2011-12-09 16:52:45)
    标签:

    it

    分类: php技术相关

    闲来无事看了一下php 

    session ,又在网上看了防止页面刷新重复提交数据,大部分写的啰啰嗦嗦的,而且大多是一样的COPY过来的连错别字都没有改 像臭婆娘的裹脚布。于是我自己也琢磨了一下,不知道也是不是裹脚布。
    这里只说用SESSION 如何实现:
    session 是作用于服务器端的数据,只要种植一次不再刷新其值是不会被改变的,就利用这一点就可以实现阻止用户重复提交数据,具体原理看看下面实现方法一下子就明白啦
    1、提交页面
    <?php
        session_start();
        $t=mktime();
        $_SESSION['conn_id']=$t;
        $_SESSION['conn']=$t;
        var_dump($_SESSION);
        var_dump($_COOKIE);
    ?>
    <html>
    <head>
    <title>防止刷新提交或者重新提交</title>
    </head>
    <body>
    <form method="POST" action="get.php">
    <span>username:</span><input type="text" name="username" id="username"><br>
                         <input type="hidden" name="hidden" id="hidden" value="<?php echo $_SESSION['conn_id']?>">
    <span>message:</span><input type="text" name="message" id="message"><br>
                         <input type="submit" value="submit">
    </form>
    </body>
    </html>
    2、服务器端接收页面
    <?php
         session_start();
         $username = $_POST['username']."<br>";
         $message  = $_POST['message'];
         $hide     = $_POST['hidden'];
         var_dump($_SESSION);
        if($hide==$_SESSION['conn'])
        {
            echo "亲,提交成功了哦";
        }else
        {
        echo "<script>alert('亲!就知道你会刷新提交,stop 你已经提交成功啦');</script>";
        echo "<script>window.location.href='index.php';</script>";
        }
        session_destroy();
    ?>

  • 相关阅读:
    因子和阶乘
    周期串
    字符串~键盘错位
    6174问题
    HDU_1015——撬锁,5循环
    HDU_1372——骑士移动,二维空间BFS
    HDU_1372——骑士移动,BFS非模版
    HDU_2001——计算两点之间的距离
    HDU_2212
    HDU_1999——不可摸数
  • 原文地址:https://www.cnblogs.com/gaogaoxingxing/p/5287818.html
Copyright © 2011-2022 走看看