Re: [請益] 防止資料重複寫入

看板PHP作者 (深藍)時間11年前 (2012/09/20 11:24), 編輯推噓2(205)
留言7則, 4人參與, 最新討論串3/4 (看更多)
我把它修改成這樣~還是不行~真的很奇怪~已經給$_SSESSION["flag"]值了~ 為什麼重新整理後它還是會寫進資料庫中~至於其他大大所說的主鍵和唯一鍵~ 因為我是做一個線上測驗的網頁~學生可在線上自由練習如果同一個學生 在線上一直測驗~可能第一次測的分數和第二次的分數也是一樣~這樣子的話~ 我不太曉得要設哪各欄位為主鍵或唯一鍵來去比對~不讓資料重複~ session_start(); : if($_SESSION["flag"]==null){ : : include ("db.php"); : : $sql="insert grade (class_sid,user,class,name,subject,score,timeoff) values : : ('1','kelly','601','王小美','chin','$score','$time')"; : : $result=mysql_query($sql) or die("sql寫入資料失敗:".mysql_error()); : : mysql_free_result($result); : } : : $_SESSION["flag"]=true; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.231.82.187

09/20 11:28, , 1F
多開一個欄位來記錄是哪張測驗卷就好了
09/20 11:28, 1F

09/20 11:30, , 2F
測驗題目是亂數選取的~
09/20 11:30, 2F

09/20 11:44, , 3F
你可能有地方把session清空了 先var_dump出來觀察看看
09/20 11:44, 3F

09/20 12:00, , 4F
用var_dump放在網頁最下面值還在~但放到網頁最上面的時候
09/20 12:00, 4F

09/20 12:01, , 5F
值就變成null了~
09/20 12:01, 5F

09/20 12:33, , 6F
insert後把他重導走不就結了。網頁設計上就應該把填答和
09/20 12:33, 6F

09/20 12:33, , 7F
db operation分開,為此就算多一頁也是可以接受的。
09/20 12:33, 7F
文章代碼(AID): #1GMenPsd (PHP)
文章代碼(AID): #1GMenPsd (PHP)