免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

PHP+MySQL物流管理系統(tǒng)源碼解析:從數(shù)據(jù)庫設(shè)計到訂單全生命周期

PHP+MySQL物流管理系統(tǒng)源碼解析:從數(shù)據(jù)庫設(shè)計到訂單全生命周期 簡介基于PHPMySQL構(gòu)建的物流管理系統(tǒng)源碼面向中小型物流企業(yè)、開發(fā)者及畢業(yè)設(shè)計用戶。系統(tǒng)覆蓋車輛信息管理、人員與權(quán)限配置、開單錄入查詢等核心模塊支持車牌號、車型、載重能力等車輛檔案維護以及按訂單號、客戶名、日期等條件檢索歷史物流單能在信息化場景下幫助企業(yè)合理調(diào)度車輛、追蹤訂單狀態(tài)、降低運營成本。整套資源共52個文件壓縮包僅258KB主體為20個PHP業(yè)務(wù)邏輯文件同時含有5組MySQL數(shù)據(jù)文件frm/myd/myi用于還原數(shù)據(jù)庫結(jié)構(gòu)另附j(luò)s/css提供前端交互與頁面樣式gif、swf資源用于界面展示readme.doc則說明部署與使用方法目錄結(jié)構(gòu)清晰便于按模塊定位學(xué)習(xí)。已有270人瀏覽學(xué)習(xí)適合希望掌握PHPMySQL前后端聯(lián)通邏輯的初中級開發(fā)者也可直接作為物流管理系統(tǒng)二次開發(fā)或畢業(yè)設(shè)計的基礎(chǔ)骨架。源碼完全開放可自由調(diào)整業(yè)務(wù)字段、查詢維度與操作權(quán)限具備良好的擴展性和參考價值。1. 一套開放的 PHPMYSQL 物流管理系統(tǒng)先跑通一條訂單的生命周期如果你所在的小團隊還在用 Excel 表格加微信群管物流訂單第一次打開這套完全開放的 PHPMYSQL 物流管理系統(tǒng)源碼時你會覺得它樸素得甚至有點土——沒有花哨的框架沒有復(fù)雜的前端組件。但當你把建單、派車、跟蹤、簽收這一整條鏈路在瀏覽器里走一遍會發(fā)現(xiàn)它的價值恰恰在業(yè)務(wù)閉環(huán)上它把物流管理里最核心的「一張訂單從哪來、到哪去、現(xiàn)在在誰手上」講清楚了。對想快速落地一套內(nèi)部物流管理系統(tǒng)的團隊或者想拿真實管理系統(tǒng)練手的學(xué)生開發(fā)者來說這份源碼能直接把從數(shù)據(jù)庫設(shè)計到 PHP 業(yè)務(wù)實現(xiàn)的過程攤開看。適合直接部署也適合從里面抄走關(guān)鍵模塊改到自己的 php 管理系統(tǒng)里。2. 系統(tǒng)架構(gòu)與數(shù)據(jù)庫設(shè)計八張表如何支撐一條物流全鏈路一份完全開放的管理系統(tǒng)源碼最值錢的部分往往不在頁面樣式而在數(shù)據(jù)庫表結(jié)構(gòu)和狀態(tài)流轉(zhuǎn)設(shè)計。我第一次拆這套源碼時沒有急著去看 PHP 文件而是先把 SQL 導(dǎo)入本地數(shù)據(jù)庫用 Navicat 把表結(jié)構(gòu)整體過了一遍??赐曛笞畲蟮母惺苁沁@個系統(tǒng)的業(yè)務(wù)邊界非常清楚就是圍繞「路運」在做文章不碰庫存、采購這些供應(yīng)鏈上游所以整個模型干凈適合二次開發(fā)。2.1 入口文件與請求路徑先分清業(yè)務(wù)腳本和公共引入這套源碼是典型的原生 PHP 項目形態(tài)沒有框架那套路由和容器概念。打開壓縮包頂層目錄下直接掛著login.php、order_list.php這種按業(yè)務(wù)命名的腳本一個瀏覽器請求過來走的路徑非常直白Web 服務(wù)器把請求交給 PHP 解釋器PHP 執(zhí)行對應(yīng)腳本腳本在最頂部require公共的數(shù)據(jù)庫連接文件和函數(shù)庫然后拼裝 SQL、渲染 HTML、輸出頁面。好處是排錯直接——地址欄的文件名就是業(yè)務(wù)模塊名定位問題不需要翻路由表。完整的目錄結(jié)構(gòu)大致是這樣的logistics/ ├── index.php # 登錄后首頁主控臺 ├── login.php # 管理員登錄入口 ├── logout.php # 退出登錄 ├── order_list.php # 訂單列表與查詢 ├── order_add.php # 新建訂單 ├── waybill_list.php # 運單列表 ├── waybill_assign.php # 派車分配 ├── waybill_track.php # 運單軌跡回放 ├── vehicle_list.php # 車輛管理 ├── driver_list.php # 司機管理 ├── customer_list.php # 客戶管理 ├── includes/ │ ├── db.php # 數(shù)據(jù)庫連接 │ ├── auth.php # 登錄鑒權(quán)公共文件 │ └── functions.php # 公共函數(shù) └── assets/ # CSS/JS 靜態(tài)資源這里有一個部署時必須注意的點includes/db.php本身沒有登錄校驗如果整個目錄被直接暴露在 Web 根目錄下別人訪問http://你的域名/includes/db.php就能看到數(shù)據(jù)庫連接配置。我一般會做兩個調(diào)整第一把includes/目錄移動到 Web 根目錄之外連接文件里用__DIR__配合相對路徑引用第二如果實在不方便移動就在 Apache 配置里加一條目錄拒絕規(guī)則把includes/的訪問直接擋掉。DirectoryMatch ^/.*/includes/ Require all denied /DirectoryMatch這套源碼里還留了不少require_once鏈改代碼時怕的不是繞而是改了一個函數(shù)后忘了其他腳本也在調(diào)用。動手前先改includes/functions.php然后全局搜索函數(shù)名會用到哪些地方這個習(xí)慣能幫你少踩至少一半的坑。2.2 核心數(shù)據(jù)表訂單、運單、車輛、客戶之間的關(guān)聯(lián)關(guān)系整套系統(tǒng)的數(shù)據(jù)模型本質(zhì)上是「客戶下單 - 生成運單 - 分配車輛與司機 - 運輸 - 簽收」這條主鏈路的映射。拆開數(shù)據(jù)庫核心表我整理成了下面這張對應(yīng)關(guān)系表名業(yè)務(wù)作用關(guān)鍵字段主要關(guān)聯(lián)customers發(fā)貨方客戶主數(shù)據(jù)id, name, phone, address, level被 orders 引用orders訂單主表order_no, customer_id, sender_, receiver_, goods_*, status多對一關(guān)聯(lián) customerswaybills運單表waybill_no, order_id, vehicle_id, driver_id, status多對一關(guān)聯(lián) orders, vehicles, driversvehicles車輛檔案id, plate_no, vehicle_type, max_weight, max_volume, status被 waybills 引用drivers司機檔案id, name, phone, license_no, vehicle_id與車輛綁定waybill_tracking運單軌跡流水id, waybill_id, action, location, operator, remark, create_time多對一關(guān)聯(lián) waybillsadmin_users后臺賬號id, username, password, role, last_login_time獨立settlement_log結(jié)算對賬記錄id, order_id, amount, status, pay_time, remark一對一關(guān)聯(lián) ordersorders 表里的sender_*和receiver_*字段是冗余設(shè)計的典型它沒有單獨建發(fā)貨地址表和收貨地址表而是把地址快照直接寫進訂單。這種做法在中小型物流系統(tǒng)里很常見——因為地址是下單一瞬間的不可變信息如果發(fā)貨人或者收貨人后續(xù)改了地址訂單里記錄的仍然是下單時的地址不能跟著客戶檔案一起變。你也可以改成外鍵關(guān)聯(lián)但會損失這種「快照」語義。waybills 表是這套系統(tǒng)的樞紐車輛、司機、訂單三張表都通過它連接起來。注意它的字段里同時保存了assign_time派車時間、depart_time發(fā)車時間、sign_time簽收時間這三個時間字段不是冗余而是給財務(wù)對賬和時效分析用的。做物流調(diào)度的人最關(guān)心的就是「派車花了多久、路上跑了多久、簽收是否超時」沒有這三個時間戳后續(xù)做績效報表就無從下手。2.3 狀態(tài)機設(shè)計為什么訂單狀態(tài)要冗余三層拆這套源碼時我最留意的部分是狀態(tài)設(shè)計。orders、waybills、waybill_tracking 三張表里都有狀態(tài)相關(guān)的字段從表面看是重復(fù)的但拉住幾個業(yè)務(wù)場景想一遍就會發(fā)現(xiàn)每層各有用途。orders.status 服務(wù)于客服查詢和財務(wù)對賬回答的是「這筆業(yè)務(wù)走到哪一步了」waybills.status 服務(wù)于調(diào)度看板回答的是「這輛車這單貨現(xiàn)在是什么狀態(tài)」waybill_tracking 里的 action 字段則是一條不可變的事件流記錄的是每一個操作節(jié)點的痕跡。三者的關(guān)系用一張流轉(zhuǎn)表可以看得很清楚操作orders.statuswaybills.statustracking.action客戶提交訂單0待審核0未分配create客服確認訂單1已確認待分配0未分配confirm調(diào)度派車2運輸中1待裝車assign司機發(fā)車2運輸中2運輸中depart客戶簽收3已簽收3已簽收sign訂單取消4已取消4已取消cancel異常掛起5異常件5異常件exception每次狀態(tài)變更時系統(tǒng)會同步更新 orders 和 waybills 的狀態(tài)同時往 waybill_tracking 里插一條不可變的流水記錄。這樣設(shè)計最大的好處是做數(shù)據(jù)對賬時只要看 tracking 表有沒有對應(yīng)的 action 記錄就能判斷某個狀態(tài)更新是系統(tǒng)正常流轉(zhuǎn)還是人為誤操作。后面對接第三方運輸平臺時我正是靠 tracking 表拿到了完整的操作軌跡才敢放心對接。3. 核心業(yè)務(wù)模塊實現(xiàn)建單、派車、簽收三條鏈路的代碼細節(jié)看源碼不能光看表結(jié)構(gòu)真正的門道在業(yè)務(wù)腳本怎么把表串起來。這套系統(tǒng)里三個核心模塊訂單創(chuàng)建、派車分配、簽收確認每個模塊都是「一次事務(wù)、多張表、狀態(tài)同步」的標準寫法。建議你按這個順序讀代碼order_add.php - waybill_assign.php - waybill_track.php。3.1 訂單創(chuàng)建一次事務(wù)同時寫入訂單表和運單表真實的物流業(yè)務(wù)里一個訂單可能拆成多個運單分批發(fā)貨但簡易系統(tǒng)通常讓一張訂單直接對應(yīng)一張運單。看order_add.php的服務(wù)端邏輯核心是這樣一段事務(wù)?php // 訂單創(chuàng)建訂單主表和運單表在同一個事務(wù)里寫入 require_once includes/db.php; require_once includes/functions.php; $pdo-beginTransaction(); try { // 1. 生成訂單編號規(guī)則日期 當天自增序號 $order_no ORD . date(Ymd) . str_pad($nextId, 4, 0, STR_PAD_LEFT); // 2. 插入訂單主表 $stmt $pdo-prepare( INSERT INTO orders (order_no, customer_id, sender_name, sender_phone, sender_address, receiver_name, receiver_phone, receiver_address, goods_name, goods_weight, goods_volume, status, create_time) VALUES (:order_no, :customer_id, :sender_name, :sender_phone, :sender_address, :receiver_name, :receiver_phone, :receiver_address, :goods_name, :goods_weight, :goods_volume, 0, NOW()) ); $stmt-execute([ :order_no $order_no, :customer_id (int)$_POST[customer_id], :sender_name trim($_POST[sender_name]), :sender_phone trim($_POST[sender_phone]), :sender_address trim($_POST[sender_address]), :receiver_name trim($_POST[receiver_name]), :receiver_phone trim($_POST[receiver_phone]), :receiver_address trim($_POST[receiver_address]), :goods_name trim($_POST[goods_name]), :goods_weight (float)$_POST[goods_weight], :goods_volume (float)$_POST[goods_volume], ]); $orderId $pdo-lastInsertId(); // 3. 插入運單表初始狀態(tài)下車輛、司機都為空 $waybill_no WB . date(Ymd) . $orderId; $stmt $pdo-prepare( INSERT INTO waybills (waybill_no, order_id, vehicle_id, driver_id, status, create_time) VALUES (:waybill_no, :order_id, 0, 0, 0, NOW()) ); $stmt-execute([ :waybill_no $waybill_no, :order_id $orderId, ]); $pdo-commit(); header(Location: order_list.php?msgcreated); } catch (Exception $e) { $pdo-rollBack(); error_log(Order create failed: . $e-getMessage()); echo 建檔失敗請稍后重試或聯(lián)系管理員; }這段代碼有兩個關(guān)鍵設(shè)計。第一訂單編號不是靠數(shù)據(jù)庫自增主鍵直接拼出來的而是用date(Ymd)加當天序號生成這樣訂單號在業(yè)務(wù)側(cè)就帶上了日期信息客服對賬時一眼能看出是哪天的單子。第二waybills表在創(chuàng)建時vehicle_id和driver_id都填 0狀態(tài)也填 0表示還沒有分配運力。把「建單」和「派車」拆成兩個獨立操作是物流系統(tǒng)的常規(guī)做法——客服先錄單調(diào)度員后續(xù)再分配車輛職責邊界清晰。注意(int)$_POST[customer_id]和(float)$_POST[goods_weight]這種強轉(zhuǎn)寫法原生項目里如果沒做過濾器強轉(zhuǎn)是成本最低的防類型注入手段。后面改代碼時不要因為看著丑就刪掉刪了反而給字符串注入留了口子。3.2 派車分配如何用 WHERE 條件擋住并發(fā)重復(fù)派車訂單創(chuàng)建之后下一步是調(diào)度員在waybill_assign.php里給運單綁定車輛和司機。這里最容易被忽略的是更新的 WHERE 條件。?php // 調(diào)度派車僅允許“待分配”狀態(tài)的運單被分配 require_once includes/db.php; require_once includes/auth.php; $waybillId (int)($_GET[waybill_id] ?? 0); $vehicleId (int)($_POST[vehicle_id] ?? 0); $driverId (int)($_POST[driver_id] ?? 0); if ($vehicleId 0 || $driverId 0 || $waybillId 0) { exit(參數(shù)錯誤請返回重試); } $pdo-beginTransaction(); try { // 關(guān)鍵WHERE 條件里帶 status 0防止重復(fù)派車 $stmt $pdo-prepare( UPDATE waybills SET vehicle_id :vehicle_id, driver_id :driver_id, status 1, assign_time NOW() WHERE id :waybill_id AND status 0 ); $stmt-execute([ :vehicle_id $vehicleId, :driver_id $driverId, :waybill_id $waybillId, ]); if ($stmt-rowCount() 0) { throw new Exception(運單狀態(tài)已變更不能重復(fù)分配); } // 同步更新訂單狀態(tài)從“已確認待分配”變?yōu)椤斑\輸中” $stmt $pdo-prepare( UPDATE orders o JOIN waybills w ON o.id w.order_id SET o.status 2 WHERE w.id :waybill_id ); $stmt-execute([:waybill_id $waybillId]); // 寫入軌跡流水 $stmt $pdo-prepare( INSERT INTO waybill_tracking (waybill_id, action, location, operator, remark, create_time) VALUES (:waybill_id, assign, 出發(fā)地, :operator, 調(diào)度派車, NOW()) ); $stmt-execute([ :waybill_id $waybillId, :operator $_SESSION[admin_name] ?? system, ]); $pdo-commit(); header(Location: waybill_list.php?msgassigned); } catch (Exception $e) { $pdo-rollBack(); error_log(Assign failed: . $e-getMessage()); exit(派車失敗 . $e-getMessage()); }那段帶status 0的 WHERE 條件不是可有可無的裝飾。我見過不少新手改造這種系統(tǒng)時覺得這個條件多余把更新語句改成了只按主鍵WHERE id :waybill_id。結(jié)果就是兩個調(diào)度員同時點「派車」同一張運單被分配到了兩個司機名下車輛和司機檔案全亂套。帶上狀態(tài)條件之后第二次更新rowCount()返回 0事務(wù)直接回滾拋異常這就構(gòu)成了最簡單可靠的并發(fā)控制。另外注意更新訂單狀態(tài)用的是UPDATE orders o JOIN waybills w ON o.id w.order_id這種跨表更新寫法。在 MySQL 里這是合法且高效的但如果你把這套邏輯移植到 SQLite 或者 PostgreSQLJOIN 更新語法就不一樣了遷移時要專門處理。3.3 簽收與軌跡回放狀態(tài)更新的同時寫入不可變流水簽收確認是整個鏈路的最后一步。這一塊的邏輯比建單還簡單但業(yè)務(wù)上有一個講究簽收只能從「待裝車」或「運輸中」兩個狀態(tài)進入不能讓調(diào)度員把一單還沒派車的運單直接點成簽收。?php // 簽收確認運單狀態(tài)必須是 1待裝車或 2運輸中才能簽收 require_once includes/db.php; require_once includes/auth.php; $waybillId (int)($_POST[waybill_id] ?? 0); $remark trim($_POST[remark] ?? ); $pdo-beginTransaction(); try { // 限制狀態(tài)范圍防止越權(quán)流轉(zhuǎn) $stmt $pdo-prepare( UPDATE waybills SET status 3, sign_time NOW() WHERE id :waybill_id AND status IN (1, 2) ); $stmt-execute([:waybill_id $waybillId]); if ($stmt-rowCount() 0) { throw new Exception(當前運單狀態(tài)不允許直接簽收); } // 同步訂單狀態(tài) $stmt $pdo-prepare( UPDATE orders o JOIN waybills w ON o.id w.order_id SET o.status 3 WHERE w.id :waybill_id ); $stmt-execute([:waybill_id $waybillId]); // 寫入簽收軌跡 $stmt $pdo-prepare( INSERT INTO waybill_tracking (waybill_id, action, location, operator, remark, create_time) VALUES (:waybill_id, sign, 收貨地, :operator, :remark, NOW()) ); $stmt-execute([ :waybill_id $waybillId, :operator $_SESSION[admin_name] ?? system, :remark $remark, ]); $pdo-commit(); header(Location: waybill_track.php?waybill_id . $waybillId); } catch (Exception $e) { $pdo-rollBack(); error_log(Sign failed: . $e-getMessage()); exit(簽收失敗 . $e-getMessage()); }軌跡回放查詢則非常簡單但排序字段有個細節(jié)值得注意SELECT action, location, operator, remark, create_time FROM waybill_tracking WHERE waybill_id :waybill_id ORDER BY id ASC這里按id ASC排序而不是create_time ASC。原因是同一秒內(nèi)可能插入多條記錄create_time相同時無法保證先后順序而自增id一定能反映事件真實的插入順序。這個細節(jié)在數(shù)據(jù)審計時非常關(guān)鍵——如果兩條流水的時間一樣你靠id能分清楚誰先誰后靠時間字段就抓瞎了。3.4 管理看板動態(tài) SQL 的實用寫法與參數(shù)綁定系統(tǒng)首頁的主控臺邏輯比較簡單查詢今日訂單數(shù)、運輸中運單數(shù)、待分配運單數(shù)、可用車輛數(shù)。但訂單列表頁的搜索模塊才是查詢邏輯里最值得仔細讀的部分。它支持按訂單號、客戶姓名、手機號、狀態(tài)四個條件自由組合篩選用了一段典型的動態(tài) SQLSELECT o.*, c.name AS customer_name, v.plate_no FROM orders o LEFT JOIN customers c ON o.customer_id c.id LEFT JOIN waybills w ON o.id w.order_id LEFT JOIN vehicles v ON w.vehicle_id v.id WHERE 11 AND (:order_no OR o.order_no :order_no) AND (:keyword OR c.name LIKE CONCAT(%, :keyword, %) OR o.receiver_name LIKE CONCAT(%, :keyword, %) OR o.receiver_phone LIKE CONCAT(%, :keyword, %)) AND (:status -1 OR o.status :status) ORDER BY o.create_time DESC LIMIT :offset, :page_sizeWHERE 11不是為了好看而是為了后面拼接動態(tài)條件時不需要專門處理第一個條件前的AND關(guān)鍵字。在原生的 php 管理系統(tǒng)里這種寫法非常常見。但要注意:status -1這種約定——所有狀態(tài)查詢都傳進來一個值-1 表示「全部狀態(tài)」這樣就用一條 SQL 覆蓋了「選全部」和「選某個狀態(tài)」兩種情況。用 PDO 執(zhí)行這段 SQL 時LIMIT :offset, :page_size的兩個占位符必須用bindValue()顯式綁定為PDO::PARAM_INT不能用默認的字符串綁定否則 MySQL 會報語法錯誤。這是 PDO 一個非常容易踩的坑。4. 部署與改寫的五個常見問題從白屏到數(shù)據(jù)錯亂的排查記錄這套源碼我實際部署了兩次中間踩了不少坑也幫別人排查過類似問題。最有價值的排查經(jīng)驗集中在五個場景按出現(xiàn)頻率從高到低排列每條都按現(xiàn)象、原因、解決的順序?qū)懺谙旅妗?.1 數(shù)據(jù)庫導(dǎo)入失敗與 PHP 版本兼容從白屏開始排查現(xiàn)象本地搭好 PHP 環(huán)境后訪問login.php直接白屏或者頁面頂部拋出Fatal error: Uncaught Error: Call to undefined function mysql_connect()這樣的報錯。數(shù)據(jù)庫導(dǎo)入時SQL 文件執(zhí)行到一半報錯中斷。原因這套源碼是幾年前的產(chǎn)物存在兩種典型環(huán)境不兼容。第一老代碼里用了mysql_*系列函數(shù)這個擴展在 PHP 7.0 起就被徹底移除了第二SQL 文件里如果混入了庫表前綴或者舊版 MySQL 的TYPEMyISAM語法在新版 MySQL 8 里會直接報錯。解決把數(shù)據(jù)庫連接方式改成 PDO 或mysqliSQL 文件統(tǒng)一用 MySQL 5.7 兼容的語法。我最后用的組合是 PHP 7.4 MySQL 5.7這兩個版本兼容性最穩(wěn)。連接文件改造后的最小可用版本如下?php // includes/db.php 改造后的最小可用版本 $host 127.0.0.1; $db logistics; $user root; $pass your_password; try { $pdo new PDO( mysql:host$host;dbname$db;charsetutf8, $user, $pass, [ PDO::ATTR_ERRMODE PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES false, ] ); } catch (PDOException $e) { error_log($e-getMessage()); exit(數(shù)據(jù)庫連接異常請檢查配置); }PDO::ATTR_EMULATE_PREPARES設(shè)置為 false 很關(guān)鍵這會讓 PDO 強制走 MySQL 原生預(yù)處理而不是在客戶端模擬預(yù)處理。原生預(yù)處理不僅能防止大部分 SQL 注入還能讓LIMIT占位符綁定整數(shù)類型時不出錯。4.2 中文亂碼字符集三處不一致現(xiàn)象后臺錄入的中文地址和客戶姓名在列表頁顯示成???或者一堆亂碼。頁面刷新幾次后亂碼位置還會變化。原因字符集有三處沒有對齊——數(shù)據(jù)庫表默認字符集不是 utf8、PDO 連接串沒指定charsetutf8、頁面 HTML 頭部沒有聲明meta charsetutf-8。這三處只要有兩處不一致中文就會在寫入或讀取時被錯誤解碼。解決統(tǒng)一改成 utf8。具體操作是先確認表結(jié)構(gòu)SHOW TABLE STATUS查看每個表的 Collation 是否為utf8_general_ci。如果不是執(zhí)行ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci。然后確認 PDO 連接串帶charsetutf8頁面head里加 meta 聲明。如果數(shù)據(jù)已經(jīng)亂掉不要直接在原表上修補先把數(shù)據(jù)導(dǎo)出為 SQL用文本編輯器確認導(dǎo)出文件的編碼是 UTF-8再清空原表重新導(dǎo)入。4.3 SQL 注入殘留搜索模塊里容易被忽視的隱患現(xiàn)象在訂單搜索框里輸入 or 11點搜索后整個訂單表的數(shù)據(jù)全部列了出來。再輸入 OR 11 --這種帶注釋的 payload有些頁面會直接報錯暴露 SQL 片段。原因源碼里訂單搜索模塊還有直接用$_GET變量拼接 SQL 的老寫法。它能正常查詢但對輸入完全沒做過濾屬于典型的注入殘留點。解決把搜索模塊全部改成 PDO 預(yù)處理語句這個改造要覆蓋三處登錄驗證、訂單搜索、報表導(dǎo)出。登錄驗證是最優(yōu)先要改的因為注入一旦打通就是后臺權(quán)限直接丟失?php // 登錄驗證用預(yù)處理替代字符串拼接 $stmt $pdo-prepare( SELECT id, username, role FROM admin_users WHERE username :username AND password :password ); $stmt-execute([ :username trim($_POST[username]), :password md5(trim($_POST[password])), ]); $admin $stmt-fetch();注意這段代碼里密碼用的是md5()這是源碼里遺留的老加密方式。二次開發(fā)時一定要換成password_hash()和password_verify()并且把現(xiàn)有admin_users表里的存量密碼重新生成哈希。換加密方案的本質(zhì)不是改一個函數(shù)而是定一個新的密碼遷移策略——常見做法是在登錄時檢測到舊哈希驗證通過后立即用新算法重新寫入。4.4 時區(qū) 8 小時偏差狀態(tài)時間線錯亂現(xiàn)象訂單創(chuàng)建時間是 16:00頁面上卻顯示 08:00。運單軌跡里的assign_time和sign_time全部比實際時間早 8 小時。原因PHP 默認時區(qū)是 UTCMySQL 服務(wù)器的時區(qū)也是 UTC。兩個環(huán)節(jié)各偏一次時間就整體少了 8 小時。這是用國外虛擬主機或默認配置的本地環(huán)境時最常見的問題。解決在入口公共文件index.php和login.php的頂部加一行date_default_timezone_set(Asia/Shanghai)同時把 MySQL 連接的時區(qū)也指到東八區(qū)。如果數(shù)據(jù)庫里已經(jīng)寫入了 UTC 時間統(tǒng)一修改時區(qū)后再插入新記錄時存量數(shù)據(jù)的時間對比會有偏差需要把存量數(shù)據(jù)也轉(zhuǎn)一次。我一般用一條更新語句把已經(jīng)錯亂的時間字段統(tǒng)一加 8 小時但這一步要在備份后執(zhí)行不能上來就改。4.5 重復(fù)提交產(chǎn)生重復(fù)訂單唯一索引與事務(wù)兜底現(xiàn)象客服快速雙擊「提交訂單」按鈕數(shù)據(jù)庫里出現(xiàn)了兩條一模一樣、只有自增 ID 和訂單號不同的訂單。對賬時客戶說只下了一單系統(tǒng)卻顯示兩單。原因表單沒有做防重復(fù)提交處理后端也沒有唯一索引約束。訂單號是 PHP 端生成的重復(fù)提交同一個表單會生成兩個不同的訂單號數(shù)據(jù)庫層面根本攔不住。解決以后端兜底為主。第一步給orders.order_no加上唯一索引ALTER TABLE orders ADD UNIQUE INDEX idx_order_no (order_no);第二步插入訂單時改成預(yù)檢查加事務(wù)的寫法。如果檢查到同一訂單號已存在直接終止并提示用戶不要重復(fù)提交而不是讓事務(wù)覆蓋寫入。前端的防重復(fù)提交也要做最樸素的做法是提交按鈕點擊一次后禁用但前端控制只是體驗優(yōu)化真正的防線仍然在后端唯一索引上。5. 進階改造把平鋪腳本做成分層給物流系統(tǒng)留出擴展余地源碼拿到手里是一堆平鋪的 PHP 腳本每個腳本里同時做收參數(shù)、查數(shù)據(jù)庫、拼 HTML 三件事。這種寫法從零到一跑通業(yè)務(wù)沒問題但接下來要加一個物流費用結(jié)算模塊時就得在十幾個腳本里重復(fù)貼一樣的 SQL——改一處忘了另一處就是事故現(xiàn)場。所以第二步改造我建議把重復(fù)的數(shù)據(jù)庫操作抽出來做一層簡單的 BaseModel。?php // includes/BaseModel.php —— 基礎(chǔ)增刪改查封裝 class BaseModel { protected $pdo; protected $table; public function __construct(PDO $pdo, string $table) { $this-pdo $pdo; $this-table $table; } public function getById(int $id): array { $stmt $this-pdo-prepare( SELECT * FROM {$this-table} WHERE id :id ); $stmt-execute([:id $id]); return $stmt-fetch() ?: []; } public function updateStatus(int $id, int $status): int { $stmt $this-pdo-prepare( UPDATE {$this-table} SET status :status WHERE id :id ); $stmt-execute([:status $status, :id $id]); return $stmt-rowCount(); } }然后在對應(yīng)業(yè)務(wù)文件里只需要繼承這個基類并在子類中寫自己的業(yè)務(wù)方法比如createOrder()、assignVehicle()、signWaybill()。這一步做完最大的變化是業(yè)務(wù)腳本從十幾頁縮到幾頁SQL 只出現(xiàn)在模型層頁面腳本里只剩參數(shù)接收和模板渲染。驗證重構(gòu)是否成功方法很直接本地起一個 PHP 內(nèi)置服務(wù)器用瀏覽器把建單、派車、簽收三個動作完整走一遍看waybill_tracking表里生成的流水順序是否和操作順序完全一致。保持一致說明狀態(tài)流轉(zhuǎn)沒有被重構(gòu)改壞不一致就用第 4 章排查方法逐步定位。我的個人習(xí)慣是拿到這種完全開放的源碼后絕不急著改業(yè)務(wù)而是先把數(shù)據(jù)庫結(jié)構(gòu)導(dǎo)出一份存到版本庫里再做一份只讀的數(shù)據(jù)字典把每張表字段含義和狀態(tài)值說明寫清楚。后來有一次項目急著對接第三方運輸平臺對賬時全靠這份數(shù)據(jù)字典直接根據(jù)平臺返回的狀態(tài)碼映射到 orders 新增的一個狀態(tài)字段半小時就完成了對接。從那以后我每次拿到新系統(tǒng)都強制先做數(shù)據(jù)字典再碰業(yè)務(wù)代碼。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
9久热这里只有精品| 99啪啪| 欧美三级巜人妻互换| 久思思热视频在线观看| 蜜臀AV在线观看| 亚洲婷婷月丁香五月| 爱射综合| 亚洲久久婷婷| 99爱在线| 99热免费| 亚洲国产精品成人免费一区久久久在线观看AAAA | 久久99综合网| 综合天天综合| 在线成人va| 亚洲 五月 婷婷 成人| 久777| 丁香五月婷婷天激情| 五月天社区婷婷| 五月天成人在线播放丁香| 婷婷五月天亚洲综合网| 99热网址| 色欲丁香久久| 亚洲一级AV在线免费播放| 日日噜狠狠色综合久| 丁香五月 性爱| 开心激情站| 99re视频在线播放| 国内一级片| 丁香婷婷色| 日韩在线观看网址| 激情五月天综合网| 久er免费视频| 潮汕成人AV片在线| 婷婷五月天伊人网| 丁香六月天婷婷色| 日韩在线一级| 大地资源色婷婷视频在线| 丁香五月天无码| 97ai婷婷| www.夜夜操| 婷婷五月花西瓜| 色婷婷瘦婷婷日韩| 99riav 亚洲| 思思色综合网站| 性爱网五月婷婷| 夜夜谢天天干| 色综合xx| 色色五月天丁香| 激情六月婷婷| 久超超碰| 99热久草| 天天日日人| 超碰免费人人肏| 在线中文亚洲| 97好吊操| 婷婷丁香视频在线观看免费| 18久久| 亚洲色久| 可以看的av| 天天五月香欧美| 五月婷婷综合在线亚洲视频| 夜夜撸日日操| 九九精品热播| 美女妹子后射视频网站在线观看| 激情啪啪五月天| 色五月色情| 五月天丁香网| 激情五月婷婷综合| 天天操天天谢| 777久久精品| 久久久高清| 亚洲精品视频在线播放| 人妻精品一区二区三区| 久久久久99精品成人片| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网| 91久久久久久久久久| 久久久天堂国产精品女人| 99热综合网| 国产精品久久久久久妇女6080| 欧美色九| 一级性爱视频| 六月五月丁香五月欧美| AV网站免费在线| 亚洲成人无码专区| 无码AV久久久久久久久| 亚洲久久激情| 婷婷的久久网站| 这里只有免费精品| 精品免费99| 欧美性二区| 97久久五月丁香婷婷| 丁香五月婷婷免费视频| 偷偷与邻居做爰完整视频| 七七九色| 久婷婷色| 国产色五月| 色婷婷丁香网| 色婷婷手机在线| 九热av| 婷婷爱五月| 超碰91人人操| 婷婷开心激情| 操人妻视频91| 色情五月天se| 思思久ren热| 日本在线视频播放91| 六六久久黄色| 久久婷婷五月综合网| 精品色色| 久九男女天堂| 中文AV网站| 精品夜夜澡人妻无码AV| 激情五月天视频| 99视频在线播放大全| 99热这里只有免费精品| 亚洲激情综合免费| 99热这里只有精品2| 丁香花五月天婷婷成人社区| 激情五月婷婷| 欧美怡红院黄站| 色色色999| 九九热视频精品| 色欲婷婷五月天| 99热精品99| 激情五月,深深爱五月| 六月丁香射婷婷欧美色图片| 婷婷激情六月中文| 五月丁香六月婷婷亚洲激情综合| 2023天天日夜夜爽| 五月丁香成人日| 只有精品视频在线观看| 伊人日日干| 国产阿姨日皮艹逼内射视频| 色九月激情综合网| 日日操天天爽| 成人免费高清在线播放| 中文字幕在线日亚洲9| 色九九九九| 婷婷六月久久综合导航| 无码色| 激情综合网色播五月| 久久a热| 美女丁香五婷婷| 99热这里只有是亚洲国产| 天天天日天天天干| 狠狠色大香蕉| 久久九九热视频| 丁香五月偷拍| 97人碰人操| 99色嘟嘟精品网站| 精品久久9| 99热自拍| 天天干天天色天天干| 伊人狠狠操| 丁香六月成人| 六月 丁香 视频| 久久婷五月| 亚洲乱码日产精品BD| 丁香六月婷婷基地| 激情久久久久久久久久久| 亚洲综合婷婷五月| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 色情五月丁香婷婷网| 黄色99网| 中文字幕丰满人妻无码专区| 中文字幕av久久爽一区| 爱爱网址9| 99精品久久久久久久久| 色碰碰视频| 九九热在视频| 99热在线播放| 五月丁香久久| 综合亚洲AV| 丁香五月另类色婷婷麻豆| 在线五月婷婷小电影| 精品福利911| 亚洲五月色| 黄色一级影片| 久久人妻超碰一区| 午夜色婷婷| 欧美婷婷五月无砖| 色欲午夜无码久久久久久张津瑜 | 丁香99| 免费看无码视频A级| 狠狠色丁香久久久婷| 做爱夜夜干天天操| 婷婷综合五月天| 色婷婷五月在线| 综合久久五| 操九色| 再次出发二| 婷婷五月天激情免费在线观看| 婷婷五月花| 日本女色人人| 午夜大香蕉| 五月婷婷丁香av| 超碰成人av| 国产精品99久久久久久久女警 | 97婷婷五月| 翔田千里 50岁 无码| 亚洲亚洲人成综合网络| 九九色人| 丁香五月婷婷综合网| 日韩欧美一级大黄网站| 五月婷婷丁香综合,亚洲天堂| 嫩草视频在线观看| 九九激情综合| 成年人丁香五月| 九九热视频在线观看| 亚洲成人中文字幕| 深爱五月天婷综合| 激情综合五月婷婷| 99久视频| 色五月婷婷小说亚洲中文字幕组| 香蕉久久国产AV一区二区| AV成人在线播放| 五月综合六月丁| 超碰免费99| 毛片九九九九九九九九18| 超碰人人射| 天天干com| av九九| 婷婷久久内射| 青草少妇激情| 99久热视频在线| 亚洲激情综合色站| 狠狠干婷婷| 狠狠色婷婷丁香五月| 婷婷五月天Av| www色婷婷| 国产三级片91| 超碰人人操| 91国产精品视频播放| 99色精品视频| 久久99网| 91久久久久久久| 婷婷五月天av| 9视频1在线| 色五月婷婷五月丁香五月| 五月丁香啪啪啪| 任你搞网站| 五月丁香六月婷婷无码| 9久9久9久女女女九九九一九| 色狠狠999综合网| 色婷婷免费视频| 99欧美三级视频| 色情五月天婷婷| 国产亚洲精品久久久久久牛牛| 日本美女上人| 色五月婷婷色| 大香蕉五月丁香| 婷婷五月花西瓜| 欧美日韩成卜| 牛牛碰免费| 天天躁日日躁狠狠躁日日躁2022年5月9日 | 人人操99| 九九99免费视频| 九九99热| 亚洲AV中文在线| 婷婷色片| 91丨九色丨高潮丰满日本| 伊人在线视频| 人妖色AV色综合| 玖玖资源站中文| 青吴乐视频| 操丝袜视频影院导航| 乱岳熟女50岁| dingxiangtingtingliuyue| 99国产在线精品视频| 婷婷五月情色| 日日操夜夜操不卡| 99热这里只有精品青草| 丁香五月婷婷偷拍| 综合网五月| 99久热| 久久人妻精品| 五月社区婷婷激情| av在线免费播放观看| 亚洲激情综合五月婷婷啪啪| 91在线观看www| 99热这里只有精品免费| 日韩一级片| 99在线小视频| 熟女五月天久久综合| 不卡的AV网站| 色五月婷婷五月| 金品在线视频99| 久热黄色| 国内裸舞二区| 91黄色五月天视频| 日本色色网站| 激情丁香婷婷六月天| 最近中文字幕大全免费版在线| 人人添人人| 猫咪伊人AV| 五月天婷婷激情综合| 色情开心五月| 天天干天天干天天| 99热这里只有精品最新| 97色97干| 五月开心网| 狠狠狠狠狠操| caop在线视频| 伊人丁香婷婷东京| www99久久| 日韩AV大全| 色情五月天首页| 国产亚洲成人综合| 久久伊人五月天| 婷婷五月天影视| 欧美激情-区二区三区| 久久总和99| 无码色色色色色| 婷婷五月花| 丁香婷婷六月在线资源观看| 天天射美女| 秋霞免费视频| 五月天久久网站| 成人视频九九| 精品爆操| 久久久99精品免费观看| 狠狠色五月| 5月色亭亭视频| 国产欧美大香蕉一区| 婷婷九月综合| 日本噜噜色网| 久久综合色五月| 97色色网| 亚洲婷婷欧美婷婷| 婷婷六月插屄激情| 激情综合无码| 亚洲欧洲小视频9| 超碰九九热| 99精彩视频在线观看| 亚洲视频国产一区| 狠狠精品干练久久久无码中文字幕| 丁香五月婷婷激情蜜桃| 影音先锋女人av鲁色资源网小说免费 | 久久九九免费视频| 激情六月五月婷婷综合网| 色欧美日| 超碰天堂网| 99日本黄站| 婷婷五月色综合| 91天天操天天干天天射| 伊人久热91| 超碰碰碰碰| 99re热在线视频观看| 我爱宗和色| 亚洲午夜视频| 91九色PORNY中文啦| 五月丁香婷婷啪啪| 丁香五月欧美激情| 婷婷丁香18| 天天草天天舔| 激情五月丁香婷婷夜夜操| 99色在线视频观看| 九久久婷婷| 亚洲激情四射| 99精品久久久久| 九九热在这里只有精品| 伊人大香五月天| 97资源碰碰在线| 午夜天堂一区人妻| 99操视频| 伊人五月天在线| 婷婷激情视频欧美视频自拍视频欧美剧| 五月婷婷色综图片| 久久总和99| .肏屄视频一区二区| 777精品久无码人妻蜜桃| 五月丁香久| 亚洲视频伍月婷婷| 婷婷五月色综合| 国产va在线视频| 99综合视频在线| 色原狠狠综合| 伊人超碰在线| 99色在线观看视频者| 五月丁香啪啪啪| 99热老网站| www.99热| 丁香久久久| 另类小说激情五月天| 69激情小说| 激情综合5月| 亚洲午夜AV| 五月天天堂久久| 久久视频婷婷| 99亚洲精美视频在线观看| 91啦丨九色丨刺激中文| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 人人插9| 日本一级大片| 狠狠爱五月婷婷| 青青草Avb在线| 天天艹| 婷婷五月天久草在线| 98国产精品综合一区二区三区 | 狠狠干,狠狠操| 99re思思热久久| 婷婷伊人网| 久久在这里99| 色播五月婷婷| 99色在线观看| 大伊香蕉精品视频在线| seuuu婷婷| 97五月婷| 中文字幕高清av| 综合AV网| Caoub青青超碰| 色网站9| 97自拍视频网| 日本黄色在线观看| 99人人干| 狠狠丁香| 久久狠色噜噜狠狠狠狠97| 思思视频这里是精品| 久久久久久xxxxx| 亚洲九九免费| 五月丁香花开综合网| 九九亚洲视频| 婷婷丁香五月综合网上 | 五月色婷丁香| 五月天操逼网| 综合激情开心五月| 思思热久久婷婷五月天| 日日天天干| 婷婷刺激综合| 深爱激情五月天| 中文字幕日产A片在线看| 丰满少妇乱A片无码| 亚洲182在线观看| 99色免费| 伊人五月天综合网| 亚洲一区二区无码蜜乳av| 九九精品视频在线观看| 91大神操美女| 中文字幕在线免费看线人| 九月激情婷婷丁香| 一区三区视频有限公司| 久久婷婷青草五月天| 五月婷婷六月丁香综合视频在线| 五月婷婷丁香狠狠撸久久| 人人视频人人干人人做| 天天操天天曰| 亚洲九九99精品视频在线播放| 五月色丁香婷婷综合| 91丨九色丨熟女|老版| 五月婷婷激情刺激| 色天天综合色| 可以免费观看的AV| 五月丁香狠狠爱| 婷婷中文字幕网站| 亚洲啪啪视频| 婷婷五月天成人基地| 婷婷爱五月天| 亚洲精品久久久久AV无码| 97干在线免费| 久久丁香五月婷婷| 五月婷婷五月天亚洲无码| 欧美性猛交99久久久99| 国产做爰视频免费播放| 色婷婷五月影院| 久久网站免费亚洲| 欧美爆乳一区二区三区| www.99视频| 五月婷婷影视| 99热这里是精品| 日日操,天天操| 这里只有精品1| 五月婷婷色五月| 九九艹女| 日日夜夜狠狠婷婷色| 五月综合缴情网| 1024操逼视频| 五月婷婷丁香六月| 99热精品观看| 天天摸天天日天天舔| 丁香六月啪| 日韩三十六页| 精品久久人妻热| 色婷婷电影网| 婷婷六月天国产综合| 久久伊人婷婷| 五月婷婷丁香俺日污视频| 久久久五月天| www.jiujiujiu| 26uuu亚洲欧美| 小视频久久久aaa| 9热久久在线| 777久久综合视频 | 五月花成人网| 天天狠天天叉| 国产激情在线| 婷婷婷婷色| 国产精品国产成人国产三级| 婷婷五月天久久| 激情深爱综合网| 99re6在线视频精品免费| 日韩 中文 欧美| 99re热免费观看视频精品| 九九激情网| 天堂色婷婷| 色婷婷五月视频| 少妇人妻丰满做爰XXX| 五月激情综合网| 婷婷性爱五月天| 99燥99日| 亚洲丁香五月深爱五月| 丁香五月婷婷基地| 婷婷五月大| 999精品乱码77777| 婷婷丁香综合| 天天干 夜夜爽| 综合色五月亭亭| 欧美婷婷五月无砖| 深爱婷婷网| 中文字幕网站在线观看| 91人人爽久久涩噜噜噜| 五月天色软件| 五月天黄色激情小说| 黑人糟蹋人妻HD中文字幕| 99综合免费视频| 97色天堂| 婷婷激情人妻| 91日视频| 五月天丁香久久| 开心深爱激情网| 91av色色乱视频| 婷婷激情五月综合丁| 婷婷色六月| 久久婷五月天| 99热这里只有精品22| 9色在线视频| 日本高清久| 亚洲综合另类| 婷婷的色色五月天| 久9无码视频| 久久久8| WWW,五月| av色婷婷| 国产毛片精品一区二区色欲黄A片| 超碰超碰在线| 久久资源网五月婷| 淫视馆aV二区一区| 色色色综合| 噜综合| 天天爱天天操| 五月丁综合在线观看| 少妇高潮A片无套内谢麻豆传| 丁香五月 综合| 99性爱| 五月丁香天天| 国产亚洲AV人片在线| 色婷婷综合网站| 婷婷黄色网| 精品五月天| 五月丁香A∨在线| 日日撸夜夜操| 五月婷婷啪啪啪| 99热免费精品| 日韩成人五月天| 黄色片久久| 99热在线免费| 五月婷婷色啪| 99综合| 777.色色| 玖玖@三月天天丁香婷婷| 久久精品视频在这里有| 久久总和99| 深爱五月激情| 午夜精品777| 五月 婷 久| 九九热精品视频| 大香蕉五月婷婷| 九九在线视频| 天天日天天做天天操| 欧美婷婷综合网| 99热这里| 五月天伊人av| 久久久五月天婷婷| 一起草Av| 国产精品色一哟哟| 操碰99| 久久久久久久久久久久久9| 五月天 无码| 99精品久久| 色婷丁香91| 五月激情网站| 另类小说五月天激情| 婷婷五月天首页激情| 欧美日韩成人在线网站| 77799热| 极品五月天| 玖玖综合网| 五月天婷婷久色| 亚洲热久| 色婷婷五月天| 九九热精品在线| 欧美五月丁香在线| 九九综合影音先锋| 六月婷婷av| 婷婷激情丁香五月婷婷激情丁香五月婷婷| 久9综合| 9色在线视频| 丁香六月 人妻| 99视频在线啪| 99无码视频| 五月丁香六月婷婷综合| 色狠狠五月天| 午夜色丁香| 亚洲成人网在线观看| 丁香五月婷婷亚洲另类| 丁香激情网| 精品人妻伦九区久久AAA片| 99亚州综合精品成人网| 欧美日韓成人亚洲精品另类| 丁香五月婷婷欧美激情-中文天堂最新版在线观看| PORNY九色9l自拍视频成人| 久久综合热17c| 色婷婷五月影院| 香蕉久久国产AV一区二区| 欧美色五月| 五月天成人手机在线视频| 婷婷WWW久久| 日韩成人AV在线| 色婷婷伊人| 99天堂在线观看免费视频| 另类小说色婷婷| 婷婷玖玖五月天| 99热这里只有精品官网| 色五月av伊人| 亚洲激情亚洲激情| 婷婷丁香激情综合色情| 久久丁香婷婷五月| 大香蕉伊然在亚洲90| 欧美性色A片免费免费观看的| 五月婷婷影院| 综合一区二区三区| 综合婷婷五月天| 五月婷婷之美女图片| 婷婷亚洲五月丁香综合在线| 婷婷激情肏屄网| 黄色片精品| 熟美女麻豆| 国产精品24r| 黄色三级毛片中字| 国产毛片精品一区二区色欲黄A片| 丁香激情久久| 婷色五月天| 丁香五月综合激情性爱| 激情噜噜噜| 五月婷婷官网色| 婷婷五月丁香伊人| 五月天激情啪啪| 婷婷丁香五月欧美人| 婷婷 激情 五月| 永久99免费视频网站| 26uuu欧美日韩| 开心五月婷婷激情| 丁香五月婷婷狠狠色| 日本一级| 免费黄色视频网址| 噜噜色天天开心| 五月天啪啪| 99操| 4399在线观看免费高清电视剧| 亚洲色色色色色色色色色| 超碰在线观看99| www久久99| 欧美在线视频99| 国产韩日亚洲美州欧亚综合在线| 99视频内射三四| 丁香六月婷婷激情综合| 五月丁香日本片| site:minyis.com| 五月天开心成人网| 欧美色色色| 五月丁六月婷| 色爱五月天| 狠狠干天天日| 丁香五月天欧美成人| 丁香五月亚洲激情婷婷射| 欧美A级网站| 五月天激日本色情在线| 国产五月天激情小说| 婷婷五月激情欧美大胆视频| 日韩在线aaa| 色综合色综合色综合色综合| 丁香婷婷91在线观看视频| 五月久久婷婷| 日韩成人电影AV| 嫩草极品| 五月婷婷精品| 超碰人人操在线| 伍月婷丁香婷| 六月丁香婷婷在线波多| 五月丁香在线观看| 人妻人人操| 久热九九| 国产AV成人精品| 涩 五月 婷婷 狠狠| 欧美色97| 成人五月天色天堂| 99热这里只有精品最新| 天天干天天拍| 99爱精品| 99riAV成人在线视频| 绿色小导航AV| 婷婷久草| 天天爱天天做天天爽| 色中色综合| 久久99精品九九久久久婷婷| 免费无码毛片一区二区A片| 97人人操人人插| 激情啪啪五月| 激情啪啪五月天| 99久久免费精品| av在线激情| 婷婷五月天影院| 综合久久8| 91九色视频| 色色日韩无码| 久99久热| 中文字幕无码AV| 97干综合网| 婷婷五月天直播| 婷婷午夜天| 久久丁香五月天| 亚洲成人av中文| 九九激情综合| 五月丁香基地| 六月婷婷五月天| 91日婷婷在线| 九九热这里有精品视频| 色色网站免费| 婷婷五月天丁香花| 婷婷刺激综合| 极品 少妇 内射| 九九干视频| 91.www综合| 亚洲另类婷婷综合| 五月色网| 五月婷婷我| 五月色网| 婷婷五月丁香激情图片 | 色VA| 超碰国产在线观看| 丁香情色五月| 久久这里只有精彩| 99国产精品久久久久久久久久久| 国产又爽又猛又粗的视频A片| 91九色中文字幕女在线观看| 国产精品色一哟哟| 五月丁香啪啪| 91九色 婷婷| 一本伊人色婷| 99视频只有精品| 一区二区免费看| 女力报到正好爱上你| 婷婷色影院| 97资源碰碰在线| 色婷婷色人人射| 色99色| 国产激情在线| 色综合久久88色综合天天| 日本欧美成人片AAAA| 色婷婷六月天| 五月丁香婷婷综合网| 五月丁久久| 欧美天天爽| 在线网黄| 操人视频91| 久热A| 国产古装妇女野外A片| 色吧五月| yellow视频在线观看91| 五月丁香趴趴| 伊人AV五月婷| 91夫妻网站九色| 色五月开心五月激情五月| 丁香五月久久| 99网址在线看| 欧美色五月| 变天就操逼婷婷五月| www激情网| 日日夜夜干| 开心婷婷中文字慕| 五月丁香婷中文| 久久免费丁香| 日日操日日撸| 日本色色影院| 99热99热99热99热| 日本色99网站| 俺去也在线视频| 色五月婷婷777| 婷婷五月天视频小说| 激情综合五月婷婷| 五月婷婷激情四季| 丁香五月婷婷成人色区| 在线不卡视频| 99热无码精品| 五月丁香在线| 国产欧美婷婷五月| 欧美大肥婆大肥BBBBB| www久久五月com| 国产精品色色| 色婷婷久久综合久色| 成人在线视频网| 激情com| 99这里有精品| 日 日干 日日做| 51精品国自产在线| 国产性色蜜乳| 五月丁香婷婷欧美色图视频五月丁香777电影 | 久久综合中文字幕| 国产1区2区3区| 色色色婷婷五月天| 狼人久草| 九九激情| 婷婷激情另类| 亚洲愉拍99热成人精品| 天堂婷婷丁香六月网| 色婷婷影院| 任你草| 天天做综合| 亚洲人妻av伦理| 婷婷性爱无码视频| 婷婷香蕉精品| 99热在线这里| 9 99免费视频| 亚洲成人免费电影| 日韩无码一区二区三区四区| 国产AV一区二区三区最新精品| xxx日本东京热| 亚洲天堂色| 五月天com| 99精品久久久| 色综合久久久久| 99爱视频在线免费观看| 精品国婬伦V无码久久久| 天天色噜| 色综合九九| 五月激情影院| 五月丁香六月激情啪| 91热网址| 婷婷丁香人妻天天爽| 狠狠色丁婷婷日日,伊人激情综合网| 欧美久久一级内射wwwwww.| 99热99re6国产在线播放| 九九中文字幕九| 91成人视频| 蜜臀av无码久久久久久久久| 操操综合网婷婷| 亚洲激情综合| 这里只有精品偷拍| AV网在线| 亚洲五月天激情| 久久婷婷五月综合97色一本| 国产一级片色色| 狠狠干五月天| 、激情六月天| 99日热在线视频| 色在线99| 亚洲婷婷月丁香五月| 天堂综合久久| 很很操96| 成片免费观看大全| 97色在线| 日日狠夜夜狠| 久操福利| 久久A极片| 综合五月天| www。88热在线视频免费观看| 嫩草视频。| 任你艹| 国产资源91在线| 91狠狠色| 日韩AC在线免费观看| 婷婷激情九月| 91小黄书网址在线观看| WWW,五月| 九九9久九9国产视频| 久久99综合网| 激情 婷婷 插| 五月丁香久久网| 91麻豆国产三级精品福利在线观看| 14色综合婷婷| 99热这里有精品2| 99啪| 九九色黄色| 五月天婷婷社区| 热久久99热欧美国产亚洲| 色色热99| 国内久久久精品99| 内射干少妇亚洲69XXX| 色天堂在线| 久久婷婷丁香六月天| 九九青青草成人| www.1024久久| 国产人妻人伦精品一区二区| 色播五月综合网| 影音先锋 婷婷| 大香蕉五月天| 婷婷激情啪啪| 91精品久久久久久久久久| www,久久久| 夜夜综合色| 天堂爱爱| A片一曲| 丁香五月 激情文学| 亚洲精品久久久无码| 色三级色三级| 五月丁香免费看| 可以直接看的av网站| 日本色道视频网站| 丁香婷婷婷五月综合色情| 99人妻碰碰久久久禁片| 亚洲精品大片| 色综合久久88色综合天天看| 亚洲五月天婷婷在线| 99在线视频免费| WWW.99热| 亚洲视频国产一区| 日本丰满久久| 操操操B| 亚洲激情av| 99综合久久| 99色在线视频| 精品国产va久久久| 五月激情偷拍婷婷| 五月丁香美女| 激情九月婷婷| 午夜成人综合| www综合久久| 丁香五月熟女| 色色婷婷综合| 中字幕视频在线永久在线观看免费| 99在线精品观看99| 26uuu丁香婷婷五月| 亚洲色优| 欧美日韩AAAA| 射久久丁香五月| 狠狠干激情五月| 草美女在线观看视频在线播放| 婷婷激情五月综合| 国产免费AV网站| 啪啪黄页网| 亭亭五月基地在线| 婷婷五月天你懂的| 69久热| 亚洲成人av在线观看| 久9热视频在线| 艹B高清无码| 夜夜嗨一区二区三区直播内容 | 久久久网站| 午夜成人天堂久久无码日韩久久| 98永久精品| 影音先锋 一区| 性爱激情小说AV五月丁香花| 日韩精品99久久| 五月婷婷亚洲色图| 人人操人人看97干| 玖玖爱导航| 色色婷婷色色| 特级操b片| 另类激情四射| 9热视频在线观看| 久久伦乱| 粉嫩av蜜桃av蜜臀av| 91人人爽狠狠狠| 精品久久99| 五月天无码| 激情综合五月激情17| 亚洲色色图片| 丁香五月六月婷婷自拍| 99色播| 五月天激情.com| 开心婷婷五月天激情网| 玖玖资源在线视频| 婷婷激情六月视频| 日本色99| 九九热这里只有精品6| 婷婷综合五月| 日本欧美成人片AAAA| 成人αV视频免费观看| 新激情婷婷| 丁香五月很很肏| 九九人人自拍| 91日韩在线| 狠狠色性| 色婷婷五月天天天干天天操天天爽| 婷婷五月天电影区小说区| 欧美性色视频| 狠狠干婷婷| 日本乱子人伦在线视频| 婷婷无五月无码视频| 亚洲激情六月| 狠狠狠狠狠狠色| 色色99| 逼逼AV| www,99热| 亚洲在线综合| 97色婷婷| 色九月综合| 骚五月婷婷| 精热在线综合网| 99re这里有精品手机在线| 五月丁香五月婷婷在线观看| 久久婷婷五月天激情四射| 丁香五月婷婷在线| 五月天开心色色网| 百度4399有码精品V在线观看 | 99视频九九热| 国产激情综合五月| 久狠日av| 91九色国产在线| 熟妇人妻中文字幕无码老熟妇| 精品婷婷丁香五| 国产五月天婷婷| 玖玖在线资源视频| 99热官网精品在线| 五月天综合网| 91九色超碰| 日本视频99| 亚洲在线激情婷婷五月| 操人妻视频91| www.婷婷.com| 亚洲182在线观看| 99九九99九九九视频精彩| 色综合爱综合| 色五月丁香婷婷久草| 开心五月激情网| 人人操大| 思思视频这里是精品| 美国色五月天婷婷资源站| 色五月首页| 久久婷婷一级片| 日韩九区| 狠狠操性爱av| 五月丁香| 亚洲殴洲精品Av在线| 亚洲思思热久| 天天做天天爱天天做| 日日夜夜天天综合| 五月天大香焦| 99久久久国产大片区| 婷婷香五月天| 超碰在线99| 丁香久月婷| 久热这里精品免费| 99九色视频在线观看| 99热香港| 婷婷丁香五月天婷婷| 五月丁香色| 免费看欧美成人A片无码 | 男人天堂99| 性爱技巧五月| 激情久久四色| 婷婷丁香五月综合免费视频百花| 日产精品久久久久久久蜜臀| 91超级碰在线视频| 五月天六月婷婷电影| 激情婷婷五月天| 97五月婷婷| 色婷婷五月综合网| 欧美性丁香色色五月天干干| 五月天久久激情| 国产综合激情五月久久| 色综合久久天天综合网| 91美女啪啪| 婷婷久久国产视频| 日日噜狠狠| 激情五月天第四色| 色五月色综合| 激情深爱五月天| enecarbon-materials.com污K127封锁请涟系@wip1688 | 福利视频在线播放| 亚洲欧美成人在线| 五月天网站免费欧美| 一二线视频 另类| se99高清无码| 99日在线视频| 日韩操女| 五月 婷婷 成人| 久久久国产精品黄毛片| 丁香六月开心| 婷婷九月亚洲| 人妻中文字幕精品| 99re这里只有精品在线观看| av中文在线| 久9热| 成人版视频在线观看| 久草网大香视频| AAA亚洲AV| 国产精品久久久久9999小说| 99久热这里只有精品视频删减版| 久久人人九| 亚洲精品中文字幕成人片| 五月天色视频| 婷婷97色| 丁香婷停五月激情综合深爱| av中文在线| 色色综合无码| 狠狠干狠狠色| 色色激情网| 97色热| 六月丁香六月婷婷欧美| 狠狠插狠狠插| 黄色99热| 开心深爱激情网| www.九九婷婷| 婷婷五月天激情基地| 男女激情久久| www.色擼擼.com| 七月丁香婷婷 色色| 天天干-天天日| 怡红院AV亚洲一区二区三区H| 亚洲在线激情婷婷五月| 99啪啪| 99在线免费视| 图片区 小说区 区 亚洲五月| 成人深爱丁香五月| 99精品在线观看| 激情99热| 欧美大肥婆大肥BBBBB| 青青操avbb| 97碰碰碰免费公开在线视频| 免费精品66| 亚洲欧洲中文日韩久久AV乱码| 开心久久爱五月天| 日日影院 | ss99热| 亚洲色99综合天堂| 婷婷综合爱| 色开心五月丁香| 天天做天天爽| 久久99久久99精品免观看粉嫩| 99精品一二三四视频| 色色免费网站| 青青草成人网| 欧美成人无码一区二区三区| 亚洲人妻av伦理| 色久五月| 色爱爱综合网| 九九热精品视频| 激情图片婷婷| 99热免| 婷五月丁香| 色婷婷色综合久久精品V| 91精品久久久久久综合五月天| 九九九九中文字幕| 五月丁香色婷婷色| 亚洲精品成人| 婷婷丁香六月天| 中出内射的人妻视频| 日韩成人影片在线观看| 婷婷五月天亚洲五码| 一区二区三区视频| 久久久久久久人妻| 五月丁香婷庭在线| 99色免费| 五月丁香六月婷| 开心激情色婷婷五月天| 婷婷丁香成人色综合| 人人视频人人干人人做| 久热一本| 中字幕视频在线永久在线观看免费| 一起草无码视频| 天天日夜夜夜操操操操| 欧美性爱专区| 亚洲熟妇无码乱子AV电影| 日本三级日本三级99| 五月丁香| 97婷婷五月| 丁香婷婷色情| 久久婷婷亚洲| 五月婷婷丁香色吧网| 综合激情专区| 欧美成人精品A片免费一区99| 东北婷婷五月天| 久久精品噜噜噜成人A∨色欲| 亚洲无码播放| 五月丁香av在线| 丁香五月激情月| 丁香五月六月| 五月婷婷丁香综合| 久99视频在线观看| 精品一二三区久久AAA片| 天天色综网| 综合激情五月丁香| 狠狠干五月| 香蕉操亚洲| 婷婷五月天伦理| 色婷婷久久视屏| 婷婷丁香成人| 亚洲AV色婷婷人禽五月天| 爱操人妻| 级人人91| 99热都是精品| 人妻操在线看| 五月丁香久久久久| 操碰色一区就去操| 色九月婷婷丁香| 综合色五月天| 五月丁香激情综合啪啪| 嫩BBB搡BBBB榛BBBB| 国产精品美女| 五五月五月| 久久婷婷色综合| 在线中文AV| www99精品| 丁香五月激情图片| 色五月天.con| yiqicaoav| 97天堂| 狠狠色成人影片| 影音先锋激情网| 五月天丁香综合久久国产| 亚洲乱码日产精品BD| 久99视频在线观看| 国精产品一区二区三区| 久热婷婷| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 99热91| 夜色综合网| 99人人操人人摸| 婷婷丁香人妻天久久| 婷婷丁香www视频日本韩国| 强壮公让我夜夜高潮A片视频| 超碰在线综合| 开心五月深爱激情| 五月婷婷中字在线| 99男人天堂| 182tv992tv人之初午夜免费观看| 亚洲综合激情五月久久| 人人色婷婷| 丁香五月冃欧美| 天天爱天天日| www.婷婷亚洲基地| 中文在线视频久9| 熟女少妇内射日韩亚洲| 操人无码| 五月综合久久| 99国产小视频| 色婷婷丁香五月天在线视频| 久久久99视频| 大胆伊人久久| 久777| 日产精品久久久久久久蜜臀 | 婷婷丁香五月天大香蕉| 99久久户外勾搭| 性色五月天| 啪啪婷婷五月天激情| 这里精品| 日日操,天天操| 五月婷婷色男女| 欧美日本VA| 少妇高潮呻吟A片免费看软件| 色色五月婷婷久久| 色久九| 色五月婷婷久久| 97精品综合| 天天添天天摸天天天天做| 婷婷五月欧美综合|