看板 PHP 關於我們 聯絡資訊
(問題已經解決、謝謝各位) 請問一下 我有一個商品 甲跟乙只能一個人購買 但是甲跟乙同時在網頁上面按下購買 機制會先檢查商品是否有足夠的數量、再購買 不過當甲跟乙都在檢查數量的時候、兩個都會顯示「有足夠的數量」 但是同時寫進去資料庫的時候、兩個都會寫入 版上有人問過類似的問題、有人提出「使用優先權、大家排隊」 不過這個要怎麼做到呢? 這樣子的問題有什麼關鍵字可以查詢找資料的嘛 拜託幫我解惑一下>"< (以解決) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 175.180.127.239 ※ 編輯: sunz5010 來自: 175.180.127.239 (03/24 16:31) ※ 編輯: sunz5010 來自: 175.180.127.239 (03/24 16:32) ※ 編輯: sunz5010 來自: 175.180.127.239 (03/24 16:33)
mesak:你可以試試 LATIV 的購物網站,我曾經下訂單之前 有貨 03/24 17:06
mesak:正準備按下去的時候 就沒貨了= = 03/24 17:06
mesak:AJAX 跑回圈取得 目前的量,誰先按下購買就處理誰的 03/24 17:07
knives:應該是有人點的時候,就改變貨品數量,在update的時候要鎖 03/24 17:09
knives:資料庫,update完就commit解鎖了 03/24 17:09
roga:樓上,用哪種方法"鎖"資料庫, 願聞其詳 ? 03/24 18:21
cokellen:樓上,MySql ,innodb, transaction 03/24 19:30
sunz5010:我用一個新的table的PK、然後用insert去做 03/25 00:13
sunz5010:要寫入資料庫之前、先inset這個PK、可以insert就寫入 03/25 00:14
sunz5010:不能insert就等待別人delete之後再做寫入資料庫 03/25 00:14
sunz5010:因為用mysql insert一個pk不會有重複的問題 03/25 00:15
sunz5010:如果有人先搶先寫入、後來的人會出現1064的error code 03/25 00:16
sunz5010:等第一個人delete之後、第二個人就能正常inset 03/25 00:17
sunz5010:利用這個功能就可以達到[LOCK]的效果、還不錯用@@ 03/25 00:18