我从HTML表单里接受数据,然后插入数据库,但是,如果再刷新一下页面的话,又会插入一条相同的数据
请问如何做才能保证不再插入这种内容。而必须要由表单提交过来的数据才能被插入呢?

解决方案 »

  1.   

    那你就在插入数据后面加上:unset($_POST)
      

  2.   

    还是不行,你看看:
    我代码是这样写的!!if(isset($_POST))
    {
      $sqlstr="INSERT INTO `post`(`name`,`gender`,`photo`,`qq`,`email`,`ip`,`title`,`content`,`time_at`) values('$name','$gender','$pic','$qq','$email','$ip','$title','$content',NOW())";
      mysql_select_db($dbname,$dbconn);
      $result = mysql_query($sqlstr);
      mysql_close($dbconn);
      if($result>0)
      {
      echo "<script>alert('插入数据成功!')</script>";
      }
      unset($_REQUEST);
    }
      

  3.   

    跳转不行,我的目的就是用户输入完成后就提交到index处理。处理完成后就在index里把所有的数据都显示出来。
    但是,不能刷新,刷新的话刚才提交的数据又会重新写入数据库。index页面,肯定少不了刷新的。
    清除$_POST 也没用啊!!
      

  4.   

    如果跳转不行,你可以用iframe框架控制或者用session判断了.这样就比较麻烦!
      

  5.   

    防止刷新重复提交,用Session+表单隐藏字段的方法设置session值如 forum1=0
    正常提交后判断此session值,如果为0,就正常执行,执行完后将其置为1
    下次再刷新提交时.此session已经为1了.不执行处理段.直接给跳走或者报错即可
      

  6.   


    if(isset($_POST))
    {
         $sqlstr="INSERT INTO `post`(`name`,`gender`,`photo`,`qq`,`email`,`ip`,`title`,`content`,`time_at`) values('$name','$gender','$pic','$qq','$email','$ip','$title','$content',NOW())";
         mysql_select_db($dbname,$dbconn);
         $result = mysql_query($sqlstr);
         mysql_close($dbconn);
         if($result>0)
         {
             echo "<script>alert('插入数据成功!')</script>";
         }
         unset($_REQUEST);
         header("location: index.php");
    }
      

  7.   

    上面那段不对.没看到你有echo
    if(isset($_POST))
    {
         $sqlstr="INSERT INTO `post`(`name`,`gender`,`photo`,`qq`,`email`,`ip`,`title`,`content`,`time_at`) values('$name','$gender','$pic','$qq','$email','$ip','$title','$content',NOW())";
         mysql_select_db($dbname,$dbconn);
         $result = mysql_query($sqlstr);
         mysql_close($dbconn);
         if($result>0)
         {
             echo "<script>alert('插入数据成功!');location.href='index.php';</script>";
         }
         unset($_REQUEST);
    }
      

  8.   

    在你的代码里面 添加这个 header('Location: #####'); ### 这个是你的提交PHP文件 重定向一下就OK了