怎么实现 刷新提交完的表单 不再向数据库插入
时间:2011-08-31
来源:互联网
我做了一个考试程序,当学生回答完问题以后,给出分数,如果不及格学生还可以再考2次,但是刷新分数页面的时候,还会向数据库里面插入记录,这样的话 考生本身只有3次机会可能就是因为不小心刷新 而丧失了考试机会 有没有让用户提交完表单后 即使刷新页面也不插入记录的方法
我试了一下方法 都不可以
1:判断是否提交
isset()?...:... 不可以 因为刷新 默认是表单已经提交了
请大家 指点下
作者: wang_youyu 发布时间: 2011-08-31
或者使用jquery/js ajax 来处理.
作者: PhpNewnew 发布时间: 2011-08-31
作者: iamyuxiang 发布时间: 2011-08-31
作者: xiexie10o 发布时间: 2011-08-31
提交插入数据库完毕弹出js 提示 然后跳转页面.
或者使用jquery/js ajax 来处理.
js弹出成绩 感觉不是很正规 还是重新加载一个页面合适 至于ajax 本身不是很熟悉 所以没打算用
作者: wang_youyu 发布时间: 2011-08-31
入库前去数据库里边查看一下,这个学生是否已经存在,如果存在直接 die();这样可以防止用户刷新啊!!
因为每个学生能考试3次 所以最多有3条记录
作者: wang_youyu 发布时间: 2011-08-31
判断为空就不插入数据,或返回不就可有了吗?
判断为空?你是说 表单文本框的值为空吗 不是的 你提交完表单后 再刷新 可以再提交的 而且表单是有值的 至于说返回 我也想到了 但是这个页面最好不好返回的好
作者: wang_youyu 发布时间: 2011-08-31
作者: zsaihz 发布时间: 2011-08-31
作者: jordan102 发布时间: 2011-08-31
在提交页面设一个session变量值为yes,分数页进行if判断,将数据存入数据库后,再把变量设为no。
我把 显示分数的页面 和题目页面写在了 同一个页面 所以 如果在同一个页面设置2个session 第一个session 会被覆盖
作者: wang_youyu 发布时间: 2011-08-31
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28