新聞中心
Ecshop后臺的訂單數(shù)據(jù)統(tǒng)計不正確
作者 / 無憂主機 時間 2015-10-21 23:56:09
今天小編遇到一個問題,小編在統(tǒng)計一個客戶朋友php空間的ecshop商城的時候,發(fā)現(xiàn)統(tǒng)計記過盡然和實際的不一樣,通過對比才知道多了一天的量。那這個是怎么造成的呢。 通過分析代碼:order_status.php文件function get_orderinfo($start_date, $end_date)的定義,其中所有的sql都用了下面的代碼:
?function get_orderinfo($start_date, $end_date) ?{ ? ? $order_info = array(); ? ? /* 未確認訂單數(shù) */ ? ? $sql = 'SELECT COUNT(*) AS unconfirmed_num FROM ' .$GLOBALS['ecs']->table('order_info'). ? ? ? ? ? ?" WHERE order_status = '" .OS_UNCONFIRMED. "' AND add_time >= '$start_date'". ? ? ? ? ? ?" AND add_time < '" . ($end_date + 86400) . "'";在代碼中$end_date+86400,除非這里用戶選擇的開始時間和結(jié)束時間是同一天,否則沒有必要加上86400(86400秒等于1天),這個錯誤結(jié)果會導致最后的訂單統(tǒng)計數(shù)量已經(jīng)不是在指定時間段內(nèi)的數(shù)據(jù),而是指定的時間后再加上一天。 知道問題就好辦理,我們將上面的代碼修改下
" AND add_time < '" . ($end_date + 86400) . "'";修改為
" AND add_time < $end_date";將修改后的文件重新上傳到無憂主機空間,我們在訪問,測試下,發(fā)現(xiàn)問題完美解決了。 無憂主機相關(guān)文章推薦閱讀: ECSHOP程序如何給商品名稱設(shè)置特效讓顯示多種顏色? ECSHOP程序如何在后臺管理中心修改支付顯示順序的方法 ECSHOP報錯:STRICT STANDARDS: REDEFINING ALREADY DEFINED CONSTRUCTOR FOR CLASS
本文地址:http://www.gle-technology.com/ecshop/20424.html