作者LearnRPG (真是有趣的地方)
看板PHP
标题Re: [请益] 防止资料重复写入
时间Thu Sep 20 14:09:49 2012
※ 引述《kg3363 (深蓝)》之铭言:
: 我把它修改成这样~还是不行~真的很奇怪~已经给$_SSESSION["flag"]值了~
: 为什麽重新整理後它还是会写进资料库中~至於其他大大所说的主键和唯一键~
: 因为我是做一个线上测验的网页~学生可在线上自由练习如果同一个学生
: 在线上一直测验~可能第一次测的分数和第二次的分数也是一样~这样子的话~
: 我不太晓得要设哪各栏位为主键或唯一键来去比对~不让资料重复~
: session_start();
: : if($_SESSION["flag"]==null){
: : }
: : $_SESSION["flag"]=true;
你的问题是
1. 线上测验系统
2. 学生测验完缴交成绩
3. 资料库每位学生只能有一笔成绩
那学号就是唯一键啊
懒的在 insert 前还要先 select 检查的话
可以改用 replace into 语法
如果有不同的测验卷
那就多增加个栏位判断 或是多做个 table 用关联性
还是问题不是我理解这样 ??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.127.194.164
1F:推 LaPass:每位同学不只一笔 09/20 14:36
2F:→ kg3363:我最後是先把php.ini的output_buffering先设为4096 09/20 15:09
3F:→ kg3363:然後再把session_start()写在网页最上方~session值就有留下 09/20 15:11
4F:→ kg3363:如果要重新测验~先连结到别的网页unset掉session再header到 09/20 15:15
5F:→ kg3363:选择科目网页~这样就ok了~感谢各位^^~ 09/20 15:16