前言:這個項目是畢設時候做的,我負責后台數據操作部分,已經很久了,這次回顧這部分,是為了復習PHP和MySQL的知識,正好現在在公司也負責的是后台管理系統的業務。第一篇【項目概況】附上畢業論文部分節選。項目github地址:https://github.com/66Web/php_book_store,歡迎Star。
![]() |
| 歡迎界面&首頁 |
![]() |
| 后台管理系統 |
一、總體結構設計
本系統分為兩個部分:前台管理系統和后台管理系統。前台管理系統包含有:書籍展示、圖書檢索、用戶信息管理、購物車、訂單等功能模塊。后台管理系統包含有:書籍管理、分類管理、用戶管理、評論管理、訂單管理等功能模塊。系統支持主流客戶端——PC端。
前台管理系統,通過登錄判斷用戶。如果沒有登錄,用戶以游客身份瀏覽網站,只能查詢書籍信息,不能進行交易。如果登錄成功,用戶則以會員身份擁有用戶中心和書架,可以進行添加購物車、填寫訂單等操作,進而完成交易。
在圖書檢索功能中,用戶可以通過模糊查詢或高級查詢,查找到自己想找的圖書。用戶登錄成功后,將喜歡的圖書收藏到個人書架中,方便以后查閱。在個人中心,用戶可以修改個人信息、管理聯系方式、發布出售圖書、管理訂單記錄。購物車功能中,一次性記錄圖書信息,如果用戶沒有提交訂單,退出登錄或關閉瀏覽器,就清空購物車。
后台管理系統,通過登錄驗證管理員。如果驗證成功,管理員可以對網站信息進行更新、修改和刪除等操作,實現對系統的日常維護。
圖書出售信息發布系統分為兩個部分:用戶發布和管理員發布。用戶根據自己的需求,可以發布自己的閑置圖書,並對出售信息進行管理。管理員負責網站官方發布,出售網站統一回收的圖書,並管理包括用戶發布在內的所有圖書出售信息。
在訂單管理功能中,用戶可以看到自己購買圖書的訂單,也可以看到客戶購買自己圖書的訂單,方便用戶之間直接進行交易。用戶在確認收貨成功之后,會開通評論功能,在所購買的圖書詳情中,顯示已購買客戶的評論信息。所有用戶的訂單與評論,后台管理員統一進行管理。
總體結構設計如圖所示。

二、概念模型設計
從應用需求出發,系統可以分為:會員、管理員、二手書類別、二手書信息、書架、訂單、訂單狀態、聯系方式、評論,九個實體。
采用先逐一分析實體屬性以及實體間的關系,設計局部E-R圖,然后再合並為全局E-R圖的方法,對整體的概念模型進行設計。
全局E-R圖如圖所示:

三、邏輯模型的設計
將二手書交易網站系統包含的9個實體的E-R圖進行概念-關系模式的轉化,可得到關系模式如表3-1所示:

為了滿足網站對性能的實際需求,提高數據的查找和管理效率,將上述關系結構做出下列優化。
考慮到訂單管理和個人信息管理的功能需求,訂單信息表和用戶信息表中的聯系方式是相同的,因此為了簡化數據表,將收貨人聯系方式從訂單信息表和用戶信息表中分離出來,單獨建聯系方式表。
書架信息表的設置是為了實現用戶對二手書籍的收藏功能,僅包含兩個字段:用戶ID和二手書編號。用戶ID與會員信息表中的用戶ID組成外鍵,二手書編號與二手書檢索表中的二手書編號組成外鍵,二者共同組成復合主鍵。是1對n關系的經典數據表結構。
為了實現限制用戶管理客戶訂單的權限,在二手書信息表中,設置供貨商字段,默認為0,表示管理員發布的二手書。用戶發布的二手書,供貨商字段值設置為對應的用戶ID,即通過判斷客戶購買二手書信息中的供貨商字段顯示用戶出售二手書的訂單。
實現方案將在下一節作具體闡述。
四、數據庫設計實現
根據上一節邏輯模型的分析,系統需要分為:會員表、管理員表、二手書信息表、二手書類別表、書架表、評論表、聯系方式表、訂單狀態表、訂單表這九個數據表。表3-2至表3-7分別展示了幾個主要的數據表。
會員表user:包含6個字段,其中id為主鍵。

二手書類別表class:包含2個字段,其中id為主鍵。

二手書信息表book:包含13個字段,其中id為主鍵。

聯系方式表touch:包含6個字段,其中id為主鍵。

訂單狀態表status:包含2個字段,其中id為主鍵。

訂單表indent:包含12個字段,其中id為主鍵。

注:轉載請注明出處


