版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、高手之(7)一、綜合案例-完善公文管理1、實(shí)現(xiàn)公文的編輯控制器:DocController.class.【已存在】方法:edit(將展示模版和數(shù)據(jù)的保存寫在一起)模版:edit.html第一步:修改模版文件 showList.html,在每行后面添加一個【編輯】按鈕,點(diǎn)擊之后跳轉(zhuǎn)到編輯頁面(edit 方法)顯示效果:第二步:在控制器中編寫方法 edit,展示數(shù)據(jù)和模版第三步:將模版文件 edit.html 放到指定的位置位置:./Application/Admin/View/Doc/edit.html說明:此處的模版文件可以直接add.html 來使用,并且改名為 edit.html第四步:在
2、 edit.html 模版中展示當(dāng)前修改的原始數(shù)據(jù)說明:1、關(guān)于文件域的值:在文件域中輸出 value 屬性沒有意義,所以可以采用和修改一樣的原理,如果用戶選擇了文件,則表示修改,如果沒有選擇,則表示不修改文件;2、由于 content 字段,在之前寫入數(shù)據(jù)表的時候接收通過 I 方法進(jìn)行了轉(zhuǎn)碼處理,所以在展示的時候還需要,還原之前的形式,需要使用到 htmlspelchars_decode。第五步:檢查表單在表單中添加一個隱藏域(通過隱藏的表單項(xiàng)來傳遞一個值),值可以是$data.id,也可以寫成$Think.get.id。第六步:改寫 edit 方法,判斷請求類型,實(shí)現(xiàn)數(shù)據(jù)的保存實(shí)現(xiàn)數(shù)據(jù)的保
3、存提交:模型中的自定義保存數(shù)據(jù)方法 updateData:二、綜合案例-實(shí)現(xiàn)知識管理1、準(zhǔn)備工作1.1、數(shù)據(jù)表數(shù)據(jù)表名:sp_knowledge創(chuàng)建結(jié)果:1.2、導(dǎo)航菜單修改模版文件 Index/index.html 文件,創(chuàng)建導(dǎo)航菜單:1.3、創(chuàng)建控制器控制器文件名:KnowledgeController.class.2、實(shí)現(xiàn)知識的添加功能控制器:KnowledgeController.class.方法:add(二合一)模版:add.html【已存在】第一步:創(chuàng)建方法 add,展示模版文件 add.html第二步:將模版文件 add.html到指定的位置位置:./Application/Ad
4、min/View/Knowledge/add.html第三步:檢查表單注意:1、如果有文件上傳則需要有 enctype 屬性;2、要求文件域是 file 類型;3、請求類型是t;第四步:改寫 add 方法,處理表單的提交數(shù)據(jù)的保存第五步:編寫自定義模型的代碼創(chuàng)建自定義模型:KnowledgeM.class.實(shí)現(xiàn)代碼,編寫方法:Public function addData();縮略圖的制作:需要使用到功能類:Image.class.(圖像處理類)。注意:如果使用圖形處理類,則必須開啟 GD2 擴(kuò)展庫。方法:構(gòu)造方法: construct其中形參都是可選的,所以在實(shí)例化的時候可以不傳遞任何的參數(shù)
5、。Open 方法:打開,一般情況下,參數(shù)是的路徑(建議使用絕對路徑)Thumb 方法:參數(shù)一般只傳遞前 2 個即可(寬高)等比縮放的原則。舉個栗子,如果之前的寬高是 2000:1000,即使設(shè)置縮略圖的比例是 100:100,則生成的結(jié)果還是100:50。Save 方法:保存,只需要傳遞第一個參數(shù)保存完整路徑即可根據(jù)上述的方法,如果不考慮實(shí)例化圖形類則可以歸納出制作縮略圖的步驟大致為:第一步:打開;第二步:制作縮略圖;第三步:保存;具體可以參考手冊中的 demo 代碼:特別說明:因?yàn)樵趫D形處理類中所有的執(zhí)行方法返回值都是$this 說明 2 點(diǎn),第一個點(diǎn)就是可以使用連貫操作的形式,第二個點(diǎn)就是
6、沒有辦法判斷圖形處理是否成功。保存測試數(shù)據(jù):實(shí)現(xiàn)上傳代碼:制作縮略圖:數(shù)據(jù)表中的數(shù)據(jù):3、實(shí)現(xiàn)知識的列表功能控制器:KnowledgeController.class.方法:showList模版:showList.html第一步:創(chuàng)建方法 showList,獲取數(shù)據(jù),展示數(shù)據(jù)和模版第二步:將模版文件 showList.html到指定的位置位置:./Application/Admin/View/Knowledge/showList.html第三步:在模版中遍歷數(shù)據(jù) data,在模版中展示顯示效果:第四步:實(shí)現(xiàn)可以通過 empty的來判斷是否有:顯示效果:編寫 download 方法實(shí)現(xiàn):三、綜合
7、案例-實(shí)現(xiàn)郵件管理郵件:這里指的郵件不是一般所說的郵件(郵件地址帶有符號的),指的是一般論壇的站內(nèi)消息(私信,pm-private message)。站內(nèi)信一共可以分為以下幾個組成部分:郵件發(fā)送、郵件收件箱、郵件發(fā)件箱。1、準(zhǔn)備工作1.1、數(shù)據(jù)表數(shù)據(jù)表:sp_創(chuàng)建成功:1.2、導(dǎo)航菜單修改文件 Index/index.html,將郵件管理的菜單顯示出來:1.3、創(chuàng)建控制器控制器文件名:Controller.class.2、實(shí)現(xiàn)郵件的發(fā)送功能控制器:Controller.class.【已存在】方法:send(二合一,展示模版+數(shù)據(jù)保存)模版:send.html第一步:創(chuàng)建 send 方法,先展示
8、郵件發(fā)送功能的模版頁面第二步:將模版文件 send.html位置:./Application/Admin/View/到指定的位置/send.html在模版中要求選擇收件人,所以需要去改寫 send 方法去展示收件人獲取收件人的信息:第三步:改寫 send 方法,查詢收件人的信息,展示在模版中第四步:在模版中展示收件人列表第五步:檢查表單Form:文件域:第六步:將數(shù)據(jù)在提交之后保存到數(shù)據(jù)表中先判斷請求類型,如果是t 請求,則處理數(shù)據(jù);如果是其他則展示數(shù)據(jù)和模版:創(chuàng)建自定義模型:編寫需要的 addData 方法實(shí)現(xiàn)數(shù)據(jù)處理和保存入庫(文件處理+數(shù)據(jù)處理):此時,功能代碼已經(jīng)全部的編寫結(jié)束,測試郵
9、件發(fā)送功能,在數(shù)據(jù)表中發(fā)送結(jié)果如下:如果數(shù)據(jù)表中有剛才提交的數(shù)據(jù),則表示郵件發(fā)送成功。3、實(shí)現(xiàn)郵件的發(fā)件箱功能控制器:Controller.class.方法:sendBox模版:sendBox.html第一步:創(chuàng)建方法 sendBox,獲取列表數(shù)據(jù),展示數(shù)據(jù)和模版注意:當(dāng)前功能是發(fā)件箱,在發(fā)件箱中需要顯示出收件人的名字。(此時數(shù)據(jù)表中的是 收件人 id,to_id 因此,需要聯(lián)表查詢數(shù)據(jù))。主表:sp_從表:sp_usert1t2關(guān)聯(lián)條件:t1.to_id = t2.id原生的sql 語句:select t1.*,t2.truename as truename from sp_ as t1 l
10、eft join sp_user as t2 on t1.to_id = t2.id where t1.from_id = 當(dāng)前用戶的 id;將上述的 sql 代碼到 navicat 中去執(zhí)行:將上述代碼在中去執(zhí)行:第二步:在模版中展示數(shù)據(jù)將模版文件 sendBox.html到指定的位置位置:./Application/Admin/View/sendBox.html顯示效果:第三步:實(shí)現(xiàn)附件的如果有附件,則顯示附件的,沒有則不顯示按鈕顯示效果:在控制器中編寫 download 方法:四、擴(kuò)展(3)1、空操作空操作是指系統(tǒng)在找不到指定的操作方法的時候,會定位到空操作方法來執(zhí)行(針對控制器也是如此
11、),利用這個機(jī)制,可以實(shí)現(xiàn)錯誤頁面和一些URL 的優(yōu)化。關(guān)于空操作的說明:1、空操作方法:在控制器中可以定義一個操作方法名字叫做_empty();2、空操作控制器:在 中存在一個空的控制器,當(dāng)指定的控制器找不到,則會去空的控制器,空控制器的文件名叫做 EmptyController.class.??詹僮鞣椒▽?shí)現(xiàn):例如,下面的空操作方法,寫在控制器中,則如果控制器中的方法不存在,則會默認(rèn)_empty 方法??盏目刂破鲗?shí)現(xiàn):創(chuàng)建空的控制器:EmptyController.class.上述的代碼會在的控制器不存在的時候進(jìn)行調(diào)用。案例:使用空操作方法實(shí)現(xiàn) 404 頁面的自定義。模版文件:第一步:將模版
12、文件到指定的位置同時將靜態(tài)文件放到指定的目錄中:修改模版中的原引入路徑:第二步:在空操作控制器中的空操作方法展示錯誤的模版頁面顯示效果:當(dāng)控制器存在,方法不存在的時候:當(dāng)控制器不存在的時候:五、jQuery 中的 ajax 回顧在 jQuery 中 ajax 方法一共有幾個?有 4 個:get、t、ajax、getJson(解決跨域的時候使用)1、$.get 方法jQuery.get(url,callback,type)或者 $.get(url,callback, type)在 jQuery 中$表示 jQuery。參數(shù)說明:url:必須的參數(shù),表示請求的 url 地址;callback:可選
13、參數(shù),表示請求成功之后觸發(fā)的回調(diào)函數(shù); type:可選參數(shù),期望的返回?cái)?shù)據(jù)類型,常見的類型有:json、xml、text、html;2、$.t 方法t(url,data,callback, type) 或者$.jQuery.t(url,data,callback, type)參數(shù):url:必須,請求地址; data:可選,給 url 傳遞的t 參數(shù);callback:可選,執(zhí)行成功之后的回調(diào)函數(shù); type:可選,期望的返回?cái)?shù)據(jù)類型;3、$.ajax 方法Ajax 方法是 jQuery 中 ajax 方法(get 和語法:t)的底層實(shí)現(xiàn)方法:$.ajax(json 對象),參數(shù)只有一個,那就是 json 對象Json 對象中的屬性:a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度酒吧食品安全管理與承包合同
- 2025年度城市公交車定點(diǎn)維修與應(yīng)急保障合同
- 2025年度地鐵隧道鋼筋工勞務(wù)施工安全質(zhì)量保障合同
- 2025年度美團(tuán)外賣用戶隱私保護(hù)與服務(wù)承諾協(xié)議
- 二零二五年度涂料裝修工程進(jìn)度款支付合同
- 2024版弱電工程維保合同
- 2025年度住宅小區(qū)車位租賃及管理服務(wù)合同
- 二零二五年度私人公司股權(quán)轉(zhuǎn)讓及風(fēng)險控制協(xié)議合同
- 二零二五年度汽車租賃代購與智能出行平臺合同
- 二零二五年度婚姻解除合同財(cái)產(chǎn)分割、子女撫養(yǎng)及共同債務(wù)處理
- 2024-2030年中國食品飲料灌裝設(shè)備行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 建筑結(jié)構(gòu)課程設(shè)計(jì)成果
- 班級建設(shè)方案中等職業(yè)學(xué)校班主任能力大賽
- 纖維增強(qiáng)復(fù)合材料 單向增強(qiáng)材料Ⅰ型-Ⅱ 型混合層間斷裂韌性的測定 編制說明
- 習(xí)近平法治思想概論教學(xué)課件緒論
- 寵物會展策劃設(shè)計(jì)方案
- 孤殘兒童護(hù)理員(四級)試題
- 醫(yī)院急診醫(yī)學(xué)小講課課件:急診呼吸衰竭的處理
- 腸梗阻導(dǎo)管在臨床中的使用及護(hù)理課件
- 小學(xué)英語單詞匯總大全打印
- 衛(wèi)生健康系統(tǒng)安全生產(chǎn)隱患全面排查
評論
0/150
提交評論