View Categories

預約系統常見問題:看到別家客戶、資料消失

< 1 分鐘閱讀

快速答案:預約系統三個最常見的狀況:A 店家看到 B 店家的客戶,是資料查詢沒有依店家篩選,或登入後的頁面被快取共用;預約資料不見,先別急著整站還原,先確認是被覆蓋、被自動清除,還是存在別處;未登入看不到預約表,多半是快取或延遲載入 JavaScript 弄壞了預約元件,登入者繞過快取所以看得到。

為什麼會這樣 #

多店家的預約平台,每筆預約和客戶都要掛在某個店家底下,列表再依目前登入的店家篩選。用動態欄位或表單外掛自己拼出來的系統,常常漏了這一層,下拉選單把全站客戶都列出來;更危險的是快取把登入後的頁面也存起來,A 店家看到的其實是別人剛剛的畫面。

資料消失常見的原因是把測試站推回正式站,測試站複製之後才進來的預約全被蓋掉;其次是還原備份、外掛設了「自動刪除過去的預約」、換外掛時沒搬資料。用外部預約服務的,資料根本不在 WordPress 裡。

未登入看不到,是訪客拿到的快取頁面裡安全碼已經過期,或優化外掛把預約元件的腳本延後、合併,元件初始化失敗;管理員登入時不走快取,自己測永遠正常。外掛本身也可能設了「登入才能預約」。

怎麼處理 #

  1. 看到別家資料:先確認預約頁、店家後台與登入後的頁面都不被快取;再用兩個店家的測試帳號各登入一次,檢查列表、下拉選單、匯出是否只有自己的資料。
  2. 查詢條件加上「店家等於目前使用者」或對應的關聯欄位,店家角色只給看自己資料的權限。
  3. 資料不見:先匯出目前還在的預約與訂單,把備份還原到測試站比對,只把缺的那段補回正式站,不要直接整站還原。
  4. 查外掛有沒有自動刪除舊預約的選項,看活動紀錄最近誰推過測試站或更新過外掛。
  5. 每筆預約都寄一封通知信給管理者,資料出事時還有第二份紀錄;旺季提高備份頻率。
  6. 未登入看不到:用無痕視窗開預約頁,把該頁排除快取與 JavaScript 延遲、合併,並確認外掛沒要求登入。
  7. 外部預約服務的外掛不穩時,改用服務商官方提供的 iframe 嵌入碼。

我們實際遇過的情況 #

一個多店家的服務平台,A 店家新增預約時,客戶選單裡出現了 B 店家的客戶。這屬於資料隔離問題,要從查詢條件與快取兩頭查,改完用不同店家的帳號交叉測試。

一家預約制的活動業者某天發現預約資料不見,當時先還原前一天的備份救急。回頭看,更穩的順序是先匯出現況、在測試站比對、最後才動正式站——直接還原,還原點之後進來的預約會一起消失。另一個網站的外部預約元件在未登入時前台不顯示,改用官方 iframe 嵌入後恢復正常。

什麼時候該找人 #

客戶資料被別的店家看到,已經是個資外洩,要立刻停用有問題的頁面再修,並評估是否要通知當事人。預約資料不見時先停手,錯誤的還原會把還在的資料一起蓋掉。備份與還原的取捨可參考 網站備份多久一次

常見問題 #

預約系統裡 A 店家為什麼看得到 B 店家的客戶? #

查詢條件沒有依店家篩選,或登入後的頁面被快取共用。先排除快取,再用兩個店家的帳號交叉測試。

預約資料不見了,可以直接還原備份嗎? #

先別整站還原,會蓋掉還在的新資料。先匯出現有預約與訂單,把備份還原到測試站比對,只補回缺的部分。

為什麼沒登入的訪客看不到預約表? #

訪客拿到快取頁面,或腳本被延遲、合併,預約元件載入失敗。把預約頁排除快取與 JS 優化,並確認外掛沒要求登入。

資料不見或外洩中:網站救援當日受理;想有人每天備份、每月顧著:網站守護方案