




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
七.四發(fā)送郵件實現(xiàn)發(fā)送郵件需要地操作郵件編輯完成,點擊"發(fā)送"按鈕時需要將郵件信息存入到數(shù)據(jù)庫,若是郵件包含附件,還需要將附件保存到文件夾upload。需要創(chuàng)建數(shù)據(jù)表:emailmsg該數(shù)據(jù)表要存放郵件所有信息,包括郵件序號,發(fā)件,收件,主題,內(nèi)容,附件信息,收發(fā)日期,是否刪除郵件等。需要創(chuàng)建文件storeemail.php七.四.一創(chuàng)建數(shù)據(jù)表emailmsg數(shù)據(jù)表emailmsg結(jié)構(gòu)數(shù)據(jù)表emailmsg列說明定義郵件序號是為了在以后打開郵件與刪除郵件時提供索引值。收件長度為一零零零個字符,允許發(fā)送郵件時指定多個用戶接收;主題長度限制在二零零個字符之內(nèi);郵件內(nèi)容可以是空地;附件名稱信息,記錄當前郵件包含地所有附件地名稱信息,需要允許為空,表示用戶可以不用選擇上傳附件。是否刪除郵件,記錄當前郵件是否已經(jīng)被用戶選擇了刪除,未刪除地記為零,被刪除地郵件則記為一,可在"已刪除"郵件列表顯示,用戶可從已刪除郵件列表再次選擇之后將其徹底刪除創(chuàng)建數(shù)據(jù)表emailmsg例七-一創(chuàng)建create_emailmsg.php文件,在連接MySQL成功并打開數(shù)據(jù)庫email之后,定義SQL語句,創(chuàng)建數(shù)據(jù)表emailmsg,在創(chuàng)建語句地后面需要使用defaultcharset=utf八設置數(shù)據(jù)表使用地字符集編碼執(zhí)行SQL語句,若是創(chuàng)建成功,則輸出"數(shù)據(jù)表emailmsg創(chuàng)建成功",否則輸出"數(shù)據(jù)表emailmsg創(chuàng)建失敗"。七.四.二保存郵件信息保存附件說明說明:設計地一六三郵箱項目,為了降低其復雜程度,將所有發(fā)送地所有郵件地附件都保存在文件夾upload處理同名附件為了盡可能避免不同用戶發(fā)送地同名附件互相沖突,采取地措施是向upload文件夾保存附件時,將附件名稱開始處都增加一個放在圓括號地隨機數(shù),隨機數(shù)地范圍是零到一零零,零零零;例如,若是上傳地附件有兩個,分別是"a.doc"與"b.ppt",假設系統(tǒng)為文件a.doc產(chǎn)生地隨機數(shù)是四二八九七,為文件b.ppt產(chǎn)生地隨機數(shù)是一九四二,則在文件夾upload下面要保存地文件分別是"(四二八九七)a.doc"與"(一九四二)b.ppt"思考問題一個用戶可以添加地附件最多有一零個,所有附件除了要保存到文件夾upload,還要將附件信息保存到數(shù)據(jù)表emailmsg地attachment列,如何準備要保存到該列地數(shù)據(jù)?保存在attachment列地附件名稱信息包含開始處增加地隨機數(shù)標識,附件名稱與結(jié)束處增加地大小信息三個部分地內(nèi)容,最后再綴上一個分號,所以在保存之前,需要將這三部分地內(nèi)容連接在一起并以分號結(jié)束;例如,若是上傳地附件分別是"a.doc"與"b.ppt",文件大小分別是一.二四kB與二.五六kB,系統(tǒng)為兩個文件產(chǎn)生地隨機數(shù)分別是四二八九七與一九四二,則保存到attachment列下面地信息是"(四二八九七)a.doc(一.二四kB);(一九四二)b.ppt(二.五六kB);"思考問題頁面有一零個文件域元素,如何確定用戶使用哪些元素上傳了附件?使用for循環(huán)結(jié)構(gòu),一循環(huán)十次,每循環(huán)一次,獲取一個文件域地附件名稱信息,然后判斷該附件名稱是否為空,只要不為空,就說明該文件域元素上傳了附件編寫代碼對附件信息行處理創(chuàng)建文件storeemail.php將所有附件按照要求保存到文件夾upload,同時準備好要保存到數(shù)據(jù)表地附件信息,使用變量$attachment保存關(guān)聯(lián)storeemail.php文件在writeemail.php文件<form>標記地action屬關(guān)聯(lián)storeemail.php文件,當用戶點擊發(fā)送按鈕時運行該文件保存郵件信息修改文件storeemail.php第一步:獲取發(fā)件,收件,主題,內(nèi)容與收發(fā)日期信息,分別使用變量$sender,$receiver,$subject,$content與$datesorr保存第二步:連接數(shù)據(jù)庫,設計插入語句將郵件信息保存到數(shù)據(jù)表emailmsg將郵件地信息保存到數(shù)據(jù)表emailmsg說明:此處因為不需要對自動增長地emailno列添加列值,所以需要將其余列名稱都寫在SQL語句,并按照指定名稱地順序給定列值,所有地列值,無論何種類型都使用單引號定界,deleted列與取值零可以省略,因為在數(shù)據(jù)表已經(jīng)指定默認值為零七.四.三實現(xiàn)系統(tǒng)退信功能在發(fā)送郵件之后,若是郵件指定地某個接收者賬號在usermsg表地emailaddr列不存在,系統(tǒng)應該自動給發(fā)送方退信,用于提示發(fā)送方所發(fā)送地郵件并沒有真正發(fā)送成功。一.系統(tǒng)退信功能實現(xiàn)說明因為發(fā)送方發(fā)送郵件時指定地接收者可能是多個用戶,對這些使用英文分號連接在一起地賬號,首先要使用英文分號作為分割符,將它們一個個分離,然后使用循環(huán)結(jié)構(gòu)分別判斷其是否是已經(jīng)注冊過地賬號;另外,因為接收者賬號信息包含了"@一六三.",而存放用戶賬號信息地usermsg表地emailaddr列值內(nèi)并不包含"@一六三.",所以在判斷某個接收者賬號是否存在之前,需要將賬號信息包含地"@一六三."信息截取掉。無論是要行字符串信息地分割,還是要行字符串地截取,都需要使用字符串分割函數(shù)explode()完成。二.函數(shù)explode()函數(shù)作用:將一個長地字符串按某個指定地字符分割成多個字符串,并且按照順序組成一個數(shù)組函數(shù)格式:explode(參數(shù)一,參數(shù)二);參數(shù)一指定用來分割字符串地字符,可以是一個字符,也可以是一個字符串;參數(shù)二指定被分割地字符串;思考問題:該函數(shù)與哪個函數(shù)完成地功能相反?函數(shù)explode()地用法用法一:$array=explode(參數(shù)一,參數(shù)二)返回結(jié)果$array是一個數(shù)組,可以使用數(shù)字索引形式訪問數(shù)組元素,$array[零]表示其第一個元素;用法二:list(變量一,變量二,變量三,…)=explode(參數(shù)一,參數(shù)二)使用list(變量列表)形式保存數(shù)據(jù),按分割后地順序?qū)⒆址来伪4娴街付ǖ刈兞?若是變量個數(shù)少于分割后字符串地個數(shù),則丟棄后面地字符串,相當于行串地截取操作。函數(shù)explode()應用舉例一假設存在字符串變量$str地內(nèi)容是"Howareyou",要使用空格分割該串,分割后地結(jié)果使用數(shù)組$strGrp存放$str="Howareyou";$strGrp=explode("",$str);函數(shù)explode()應用舉例二創(chuàng)建文件explode.php,定義字符串變量$receiver為"zhanglihong@一六三.;liminghua@一六三.;liuyuping@一六三.",將該串使用分號分割之后分行輸出每一部分地內(nèi)容思考問題:若是要將上例分割之后每個賬號字符串地"@一六三."去掉之后再輸出,如何實現(xiàn)?解決問題判斷某個收件賬號是否存在獲取收件信息后(這里是指完整地username@一六三.地形式),使用explode()函數(shù)截取其地用戶名信息(即去掉@一六三.部分),在數(shù)據(jù)表usermsg地列emailaddr查詢該用戶名信息,找到,則說明收件賬號存在,否則說明不存在。思考問題系統(tǒng)退信時,發(fā)件,收件,主題,內(nèi)容分別要如何設置?發(fā)件設置為"system",收件設置為原郵件地發(fā)件,主題設置為"系統(tǒng)退信",內(nèi)容設置為"妳所指定地接收者賬號xxx不存在,信件退回"
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《小樹有多少棵》(教學設計)-2024-2025學年三年級上冊數(shù)學北師大版
- 信號通路在發(fā)育中的作用-深度研究
- Module 12 Save our world unit 3 英文版教學設計 2024-2025學年外研版英語九年級上冊
- 胡海牙安全意識培訓-深度研究
- 2《花的學?!方虒W設計-2024-2025學年統(tǒng)編版語文三年級上冊
- 甲狀腺自身抗體檢測技術(shù)-深度研究
- 深圳市工業(yè)品買賣合同
- 漳州職業(yè)技術(shù)學院《數(shù)據(jù)結(jié)構(gòu)與算法導論》2023-2024學年第一學期期末試卷
- 阜陽幼兒師范高等??茖W校《中學音樂學科教學論》2023-2024學年第一學期期末試卷
- 山西省新絳縣2025年高三下學期第五次調(diào)研考試英語試題試卷含解析
- 少兒美術(shù)繪本教案課件-3-6歲 《100層巴士》
- 鋼筋原材質(zhì)量證明書
- WH/T 42-2011演出場所安全技術(shù)要求第2部分:臨時搭建演出場所舞臺、看臺安全技術(shù)要求
- GB/T 5023.5-2008額定電壓450/750 V及以下聚氯乙烯絕緣電纜第5部分:軟電纜(軟線)
- GB/T 23445-2009聚合物水泥防水涂料
- 瓷貼面教學課件
- 尺骨冠突骨折課件
- 北師大版七年級下冊第一章整式的乘除計算題專項訓練
- 2022年蘇州健雄職業(yè)技術(shù)學院單招考試面試試題及答案解析
- 乳腺癌改良根治術(shù)
- 新版(七步法案例)PFMEA
評論
0/150
提交評論