2013年7月25日 星期四

修正兌換碼問題

Fixing Codes Problem

客戶的兌換碼出了問題。原本小寫英文字母在真正的擦擦卡上的位置有所出入,像圖中的「g0155a4q」看上去是「90155a4q」。所有穿底的字母都往上移,造成使用者分辨不出 9, g, q 的分別,從而無法增加積分。為了方便使用者,解決方法最好是自行把兌換碼中凡是出現 9, g, q 的地方都換上 9, g, q,看看新增的兌換碼會否跟原有的相同。測試後證實沒有一個相同。這樣就能用以上方法解決問題。最簡單的是把新兌換碼匯入到數據庫,程式也不用改,避免出現問題。但這個做法會把原先的 56000 個兌換碼暴升至 158086 個。是原來的三倍,不是最好的方法。於是,想出了另一個較為可行的方案。當使用者輸入兌換碼後,計算出可能的新兌換碼,然後以這些碼一拼更新到數據庫。由於所有新兌換碼都不會在數據庫出現,因此只有原先正確的兌換碼才能更新到數據庫中,從而解決問題。還有另一個更簡單的方法,就是把所有 g 改為 9。做過測試,修改後的兌換碼同樣沒有跟數據庫的兌換碼相撞,所以這個方法也是可行。


No result

No result

沒有留言: