




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、12345678910SELECT ecs_users.user_name,ecs_order_goods.goods_id,ecs_order_goods.goods_name, order_info.add_timeFROM ecs_users, (SELECT order_id, user_id, add_timeFROM ecs_order_infoORDER BY ecs_order_info.add_time DESC LIMIT 0 , 20昨天給速度購(gòu)物網(wǎng)添加了首頁(yè)滾動(dòng)顯示交易的功能,今天整理一下發(fā)上來(lái)造福民眾,O(_)O 對(duì)于ecshop 添加新功能我感覺(jué)無(wú)外乎就是兩個(gè)地方的
2、修改,顯示的要修改模板,為了方便下次升級(jí),最好都做成 lbi,下次升級(jí)了直接把 lbi 拷進(jìn)去, 然后稍微修改一下dwt 的模板就行了。而對(duì)于程序部分的修改,我建議做一個(gè)自己的目錄,比如 dev,然后把自己加的每個(gè)功能做成一個(gè)文件放到 dev 目錄里面,在需要的時(shí)候在原來(lái)的ecshop 的里面include或者require 進(jìn)來(lái)就行了。這樣下次系統(tǒng)升級(jí)目錄一拷,然后在該 include 的地方include 一下就ok 了,省時(shí)。當(dāng)然,我個(gè)人建議你一個(gè)表,用來(lái)保存你都在哪些地方做過(guò)哪些修改,以方便下次升級(jí)的使用。下面我從模板和程序兩個(gè) 方面說(shuō)一下需要修改什么地方。一、程序?qū)用嫘薷南胍@示的無(wú)
3、非就是什么人在什么時(shí)間了什么東西,這樣分析下來(lái)需要去從數(shù)據(jù)庫(kù)出來(lái)這來(lái)信息。從網(wǎng)上找到ecshop 的數(shù)據(jù)字典,看了看 和咱們相關(guān)的表有三個(gè) ecs_order_info,ecs_order_goods,ecs_users,分別了訂單信息,訂單對(duì)應(yīng)的商品信息和商品的用戶(hù)信息。這三個(gè)表同 user_id,order_id 和 goods_id 三個(gè)key 來(lái)聯(lián)系,下面要寫(xiě)出sql 語(yǔ)句從中取出需要的那些信息,sql 語(yǔ)句如下:12345678910111213141516171819202122/* 調(diào)用獲取者和物品查詢(xún)* acs private* return array*/function i
4、ndex_get_recent_buy_query()$sql = SELECT ecs_users.user_name, ecs_order_goods.goods_id,ecs_order_goods.goods_name, order_info.add_timeFROM ecs_users, (SELECT order_id, user_id, add_time FROM ecs_order_infoORDER BY ecs_order_info.add_timeDESCLIMIT 0 , 20) AS order_info, ecs_order_goods上面語(yǔ)句的意思從ecs_ord
5、er_info 里面提取前 20 個(gè)交易,然后根據(jù) order_id,goods_id 和user_id 的關(guān)聯(lián)來(lái)獲取用戶(hù)名、商品名、商品id 和訂單時(shí)間。搞定了 sql 語(yǔ)句, 下面就要按照ecshop 的模式來(lái)寫(xiě)個(gè)函數(shù),這個(gè)函數(shù)從通過(guò)數(shù)據(jù)庫(kù)獲取sql 語(yǔ)句的內(nèi)容,然后把這個(gè)sql 的record 封裝到一個(gè)array里面,傳給smarty 模板來(lái)使用。 下面給出代碼,大家參考一下:1112) AS order_info, ecs_order_goodsWHERE order_info.order_id = ecs_order_goods.order_idAND order_info.use
6、r_id = ecs_users.user_id;12/獲取的者信息$smarty-assign(recent_buys,上面代碼使用了$GLOBALSdb-getAll($sql);來(lái)獲取數(shù)據(jù)庫(kù)里面,這個(gè) db 是在init.里面系統(tǒng)初始化加載好的全局變量,他負(fù)責(zé)和數(shù)據(jù)庫(kù)交互,獲取 數(shù)據(jù)等功能。有時(shí)間我寫(xiě)幾篇 ecshop 代碼分析的文章,詳細(xì)講解一下ecshop 的初始化過(guò)程,大家就可以了解 ecshop 高質(zhì)量的代碼了。下面的那個(gè)foreach 做的而 工作其實(shí)就是把數(shù)據(jù)封裝到 array,smarty 在模板處理時(shí)數(shù)組友好的。上面只是獲取了array,下面的語(yǔ)句是賦值 array 到s
7、marty 模板”232425262728293031323334353637WHERE order_info.order_id = ecs_order_goods.order_idAND order_info.user_id = ecs_users.user_id;$all = $GLOBALSdb-getAll($sql);$arr = array();foreach ($all AS $idx = $row)$arr$idxusername =$rowuser_name;$arr$idxgoodName =$rowgoods_name;$arr$idxgoodID=$rowgoods_i
8、d;$arr$idxadd_time = local_date($GLOBALS_CFGdate_format,$rowadd_time);return $arr;把這句話(huà)加到index.的類(lèi)似的地方就可以,基本上在 80 多行,ecshop 集中模板賦值的地方。在面來(lái)看看賦過(guò)去的值smarty 模板是怎么用的。二、模板層面的修改建立一個(gè)Businesivities.lbi 來(lái)放的smarty 模板內(nèi)容。下面是代碼,看完代碼我來(lái)分析:123456789101112131415161718192021222324.boxCenterList formdisplay:inline;.boxCent
9、erList form acolor:#404040; text-decoration:underline;$lang.sale_activities$buy_info.username 在 $buy_info.add_time 買(mǎi)了$buy_info.goodNameindex_get_recent_buy_query();大家注意看上面的是來(lái)說(shuō)明你的模板內(nèi)容基本信息的,我這里是 utf8,如果你是 gbk,要改成 gbk 哦。 是和上面程序里面的$smarty-assign(recent_buys, index_get_recent_buy_query()對(duì)應(yīng)的,若果你給 recent_buys 賦值, 并且這個(gè)值不為空或者 0 的話(huà)才顯示咱們的模板內(nèi)容。重點(diǎn)看,foreach 是smarty 模板內(nèi)置函數(shù),其 主要作用是遍歷傳入的數(shù)組,然后生成內(nèi)容,類(lèi)似于其他語(yǔ)言里面的foreach。這句話(huà)就是遍歷recent_buys,然后把每次遍歷的項(xiàng)做buy_info,其實(shí)這個(gè)buy_info 就是咱們數(shù)據(jù)的 2 維數(shù)組的第二維了。你可以直接用$buy_info.goodName這種形式來(lái)調(diào)用你數(shù)組傳入的內(nèi)容。用smarty 模板數(shù)據(jù)和現(xiàn)實(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 共享旅居托管合同范本
- 供電部門(mén)保潔合同范本
- 農(nóng)村拆遷有合同范例
- 專(zhuān)案看護(hù)服務(wù)合同范本
- 個(gè)人合作合同范本
- 中介裝修代租合同范本
- 2024年太原市小店區(qū)醫(yī)療集團(tuán)招聘考試真題
- 2024年深圳市龍崗區(qū)招聘教師考試真題
- 保理置換合同范本
- 凍辣椒采購(gòu)合同范本
- 2025年湖南城建職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)完美版
- 武漢2025年湖北武漢市教育系統(tǒng)專(zhuān)項(xiàng)招聘教師679人筆試歷年參考題庫(kù)附帶答案詳解
- 高中主題班會(huì) 借哪吒精神燃開(kāi)學(xué)斗志!課件-高一下學(xué)期開(kāi)學(xué)第一課班會(huì)
- 2024年12月2025浙江湖州市長(zhǎng)興縣綜合行政執(zhí)法局公開(kāi)招聘輔助執(zhí)法人員8人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 濰坊2025年山東濰坊市產(chǎn)業(yè)技術(shù)研究院招聘7人筆試歷年參考題庫(kù)附帶答案詳解
- 《南非綜合簡(jiǎn)要介紹》課件
- 2023六年級(jí)數(shù)學(xué)下冊(cè) 第2單元 百分?jǐn)?shù)(二)綜合與實(shí)踐 生活與百分?jǐn)?shù)說(shuō)課稿 新人教版
- 財(cái)務(wù)管理畢業(yè)論文
- 大模型關(guān)鍵技術(shù)與應(yīng)用
- 小學(xué)五年級(jí)體育教案全冊(cè)(人教版)
- 2024《整治形式主義為基層減負(fù)若干規(guī)定》全文課件
評(píng)論
0/150
提交評(píng)論