JoshChen_php 简单的商城网站功能原理(一)
首先,這是我在博客園的第一篇文章!看著一些厲害的大牛們,寫的那么好的文章!真是羨慕不已。
今天就利用這次機會好好的也發揮下自己哈!希望各位可以多多指教。有不好之處記得評論哦,本人正處于學習中哈。
臨近期末了,也正好給自己復習復習,回顧一下整個學期來所學的東西。
第一:要先明確一下需求。
??????1、用戶注冊登陸
2、后臺分類添加
3、后臺商品添加
4、前臺顯示分類,例如格式為:手機(3) 數量為改分類下的所有商品數量。
5、前臺顯示商品列表
6、商品顯示分頁顯示,例如格式為:<Prev 1? 2? 3 4??5? Next>?? 當前頁面顯示在中間,自動補齊功能
7、商品詳細頁,有難點是:一張主圖,多張小圖。
8、加入購物車(有修改數量功能,刪除功能)
9、結算填寫收獲地址,結賬數據提交到數據庫
10、后臺訂單顯示頁
第二:需求明確后,我們就要開始設計數據庫了。在設計數據庫的前提下,我們又要搞定好各個表的各種關系。
1、用戶表(id,username,userpwd,ctime)由于是簡單的商城網站實現,故不考慮太多的權限以及另外的功能。所以用戶表較為簡單。
2、根據后臺的分類添加? ----分類表(字段包括:id,pid,name,csort分別代表id,父id,分類名,排序)
3、商品表(id,name,title,details,prices,ctime,category)?? 在關系中與分類表是多對一的關系。一個分類可以存放多個商品
4、附件表(id,name,oname,type,size,extname,ctime,goods)也可稱為是圖片表,一個商品對應的多個圖片。
5、訂單表(id,code(訂單編號),total,user,ctime,st_name,st_address,st_postcode(郵編),st_mobile,st_phone)
6、訂單項表(id,goods,number,subtotal,orders) --該表由于考慮到在一個訂單里面可能會存在多個不同的商品。
第三:有了需求,有了數據庫,有了思路。就來趕緊完成最好完成的一塊了。Model模型。當然在模型中,基本上的字段都是和數據庫是一樣,在這我就不一一打出來了,但是我會把我覺得需要考慮以及需要注意的重點位置給寫出來。
model的話,其實也就是一個數據臨時存放的對象。
對于商品表的model我覺得有一點是需要記住的,就是獲取第一張圖片。下面是商品表的model
class Goods{
......
?
private $firstimg;
private $attachs=array();
下面的get,set就不一一列出來了。就列個取出第一張圖片的get,set就可以了。
public function getFirstimg(){
if(count($this->attachs)>0)
{
$this->firstimg=$this->attachs[0];
}else{
$defaultimg=new Attach();
$defaultimg->setName("noimg.jpg"); ? //如果沒有圖片就給他初始個圖片。
$this->firstimg=$defaultimg;
}
return $this->firstimg;
}
......
?
}
第二個是訂單項的model,在這個model里面,主要是有個小計的功能。當你存進來的時候就要事先把小計給計算出來。
所以需要一個構造函數:
function __construct($id,$goods,$number)
{
$this->id=$id;
$this->goods=$goods;
$this->number=$number;
$this->subtotal=$goods->getPrice()*$number;
}
這樣就實現了小計的功能了。
第三是訂單model 在當你把所有訂單項放在同個訂單的時候要取出總計,故當存入訂單項后就要計算出總計。
public function setOrderitems($orderitems){
$this->orderitems=$orderitems;
$total=0;
for($i=0;$i<count($this->orderitems);$i++)
{
$total+=$this->orderitems[$i]->getSubtotal();
}
$this->total=$total;
}
public function getTotal(){
$total=0;
for($i=0;$i<count($this->orderitems);$i++)
{
$total+=$this->orderitems[$i]->getSubtotal();
}
$this->total=$total;
return $this->total;
}
好了,前期功能終于做好了。剩下的就是DAO(我們所說的與數據庫操作的文件_增刪查改等),和程序的控制器了。
今天就到期為止了。期待下篇文章的誕生吧哈。也希望自己能夠在考試之前,整體的過一遍。
下一篇我將會繼續DAO的完善。
希望大家可以多多點評。學生一名,寫的不好,請諒解。
轉載于:https://www.cnblogs.com/cchulong/archive/2012/12/17/2820034.html
總結
以上是生活随笔為你收集整理的JoshChen_php 简单的商城网站功能原理(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Excel 常见公式
- 下一篇: PHP session值控制