Here's what's happening at Diesel: Basically incompetent software developers.
The coupon entry value is not being filtered before being passed to the database. And, the check in the database for the coupon is not correct.
The technical explanation: It looks like they are using a SQL LIKE to check the coupon, rather than an =. In conjunction with the % in the coupon (% is a wildcard), this is bringing up all of the coupons that start with 20 (using '20%' as the example), which means that coupon 200000000000123, 200000000000124, 200000000000125 are being brought up. Then they select which ever one of these is at the top. It looks like the list of coupons that match is not being sorted, so which coupon is at the top and selected is almost random.
Last edited by murg; 12-25-2013 at 09:32 PM.
|