PHP網站開發項目式教程(微課版)

王愛華 劉錫冬

買這商品的人也買了...

商品描述

本書分為基礎篇、核心篇與提高篇三大部分,共12個任務。基礎篇包含4個教學任務,分別是PHP基礎知識簡介,PHP程序的運行環境搭建,PHP 7的基本語法和表單數據提交;核心篇包含5個教學任務,分別是163郵箱註冊功能實現,163郵箱登錄功能實現,163郵箱寫郵件功能實現,接收、閱讀、刪除郵件功能實現,以及在線投票與網站計數功能實現;提高篇包含3個教學任務,包含註冊界面的密碼強弱判斷、復雜的附件添加與處理方法和PHP面向對象。
全書內容由淺入深,循序漸進,旨在培養學生開發實際網站的能力。本書可作為高等職業院校電腦類學生的專業課教材,也適合應用PHP開發動態網站的人員學習使用。

作者簡介

王愛華
山東商業職業學院教師。有半年企業掛職經歷。發表3篇核心期刊、兩篇EI檢索及普通期刊文章多篇、主持建設兩門山東省精品課程、一門精品資源共享課(PHP動態網站開發)、主持山東省教育廳重點課題一項、山東省教學成果一等獎第三位。主要承擔網頁製作、PHP動態網站開發、javaScript程序設計、jQuery程序設計、計算機網絡等多門課程的教學

目錄大綱

第一部分基礎篇
任務1 PHP基礎知識簡介2 
1.1靜態網頁與動態網頁的執行過程2 
1.1.1靜態網頁與執行過程2 
1.1.2動態網頁與執行過程3 
1.1.3動態網頁與靜態網頁的區別4 
1.2初識PHP 4 
1.2.1關於PHP 5 
1.2.2 PHP的功能5 
1.3小結6 
1.4習題6 

任務2 PHP程序的運行環境搭建7 
2.1安裝與配置PHP 8 
2.1.1安裝PHP 8 
2.1.2修改PHP配置文件9 
2.2配置Apache服務器9 
2.2.1安裝VC14 10 
2.2.2 Apache2.4安裝和配置10 
2.2.3安裝和啟動Apache 13 
2.2.4應用Apache主目錄15 
2.3集成化的開發環境15 
2.3.1 phpStudy的安裝16 
2.3.2 phpStudy的主界面16 
2.4 PHP程序的開發工具20 
2.4.1安裝及初始化ZendStudioForEclipse-6_0_0 20 
2.4.2更改Zend Studio編碼類型21 
2.4.3創建並編輯PHP文件23
2.5小結25 
2.6習題25 

任務3 PHP 7的基本語法27 
3.1 PHP語法基礎27 
3.1.1第一個PHP程序27 
3.1.2解決PHP程序中漢字的亂碼問題28 
3.1.3 PHP標記與註釋29 
3.1. 4 PHP中常量的定義30 
3.1.5 PHP中的變量31 
3.1.6 PHP中的運算符32 
3.1.7 PHP程序的輸出語句echo 33 
3.2 PHP中的日期和時間35 
3.2.1日期時間函數date( ) 35 
3.2.2獲取當前時間戳函數strtotime() 36 
3.3流程控制結構37 
3.3.1分支結構38 
3.3.2循環結構41 
3.4數組45 
3.4.1 PHP數組的基本概念45 
3.4.2 PHP數組的類型46 
3.4.3遍歷數組48 
3.4.4數組應用案例49 
3.5小結50 
3.6習題50 

任務4表單數據提交53 
4.1表單界面設計及表單數據驗證53 
4.1.1表單界面設計53 
4.1.2表單數據驗證57 
4.1 .3使用HTML 5新技術完成數據驗證59
4.2表單數據提交61 
4.2.1系統內置數組$_POST和$_GET 61 
4.2.2複選框組數據的提交61 
4.2.3獲取並處理表單數據62 
4.2.4使用isset()函數解決單選按鈕和複選框的問題63 
4.3文件上傳功能實現64 
4.3.1瀏覽器端的功能設置64 
4.3.2服務器端的功能設置64 
4.3.3簡單文件上傳實例65 
4.3.4上傳並顯示頭像功能實現67 
4.3.5多文件上傳68 
4.3.6大文件上傳69 
4.4小結70 
4.5習題70 

第二部分核心篇
任務5 163郵箱註冊功能實現74 
5.1簡單註冊功能實現74 
5.1.1郵箱註冊界面設計74 
5.1.2使用JavaScript驗證註冊數據78 
5.1.3服務器端獲取並輸出註冊數據78 
5.2使用圖片驗證碼79 
5.2.1 PHP的圖像處理函數79 
5.2.2創建圖片驗證碼81 
5.2.3圖片驗證碼的插入與刷新85 
5.2. 4 Session機制的原理與應用86 
5.2.5實現圖片驗證碼的驗證功能89 
5.2.6在PHP中引用外部文件92
5.3 PHP操作MySQL數據庫92 
5.3.1 mysqli_connect()及相關函數92 
5.3.2 mysqli_select_db()函數94 
5.3.3 mysqli_query()函數95 
5.3.4 mysqli_num_rows()函數99 
5.3.5 mysqli_real_escape_string()函數100 
5.3. 6 mysqli_close()函數101 
5.4使用數據庫保存註冊信息101 
5.4.1使用Ajax檢查郵件地址的唯一性102 
5.4.2保存註冊信息107 
5.4.3 md5()函數加密108 
5.5小結110 
5.6習題110 

任務6 163郵箱登錄功能實現113 
6.1設計登錄界面113 
6.1.1設計普通的登錄界面113 
6.1.2設計Tab選項卡式登錄界面116 
6.2完成登錄功能121 
6.2.1創建denglu.php文件121 
6.2.2使用sprintf( )函數格式化SQL語句122 
6.3小結123 
6.4習題123 

任務7 163郵箱寫郵件功能實現125 
7.1設計郵箱主窗口界面125 
7.1.1設計頂部區域126
7.1.2設計左下部區域128 
7.1.3設計右下部區域130 
7.1.4 email.php的完整代碼133 
7.2實現寫郵件頁面功能134 
7.2.1佈局、樣式及頁面元素插入135 
7.2.2實現腳本功能139 
7.2.3完整的writeemail.php代碼144 
7.3添加附件功能的實現145 
7.3.1界面設計146 
7.3.2使用腳本實現多附件添加和刪除附件的功能148 
7.4發送郵件151 
7.4.1創建數據表emailmsg 151 
7.4.2保存郵件信息153 
7.4.3實現系統退信功能155 
7.4.4 storeemail.php文件的完整代碼159 
7.5小結160 
7.6習題160 

任務8接收、閱讀、刪除郵件功能實現162 
8.1分頁瀏覽郵件162 
8.1.1收郵件功能描述162 
8.1.2用$_GET接收URL附加數據163 
8.1.3處理查詢結果記錄集中的記錄166 
8.1.4分頁瀏覽郵件168 
8.1.5分頁瀏覽中的數據驗證179 
8.1.6 receiveemail.css和receiveemail.php的完整代碼180 
8.2打開並閱讀郵件183
8.2.1打開並閱讀郵件頁面的佈局結構及功能說明184 
8.2.2字符串替換函數185 
8.2.3打開並閱讀郵件的功能實現189 
8.2.4 openemail.css和openemail.php文件的完整代碼194 
8.3刪除郵件196 
8.3.1將郵件放入已刪除文件夾196 
8.3.2分頁瀏覽已刪除文件夾中的郵件198 
8.3.3徹底刪除郵件198 
8.4小結200 
8.5習題200 

任務9在線投票與網站計數功能實現202 
9.1文件系統函數202 
9.1.1文件的打開與關閉202 
9.1.2文件的讀取與寫入203 
9.2在線投票功能實現205 
9.2.1簡單在線投票功能實現205 
9.2.2使用session禁止反复投票210 
9.2.3使用cookie禁止重複投票212 
9.3網站計數器功能實現213 
9.4小結215 
9.5習題216 

第三部分提高篇
任務10註冊界面的密碼強弱判斷218 
10.1創建新的註冊頁面218 
10.2密碼強弱的判斷220 
10.3小結222 

任務11複雜的附件添加與處理方法223
11.1設計“添加附件”頁面224 
11.1.1選擇附件的界面設計224 
11.1.2表單界面內容與數據處理功能的合併225 
11.2添加與刪除附件功能的實現226 
11.2.1界面設計226 
11.2.2添加段落節點顯示附件信息229 
11.2.3刪除附件230 
11.3修改storeemail.php文件234 
11.4小結235 

任務12 PHP面向對象236 
12.1理解面向對象236 
12.1.1面向對象程序設計概念236 
12.1.2面向對象的基本特徵237 
12.2類和對象237 
12.2.1類的創建與實例化237 
12.2.2類的訪問控制239 
12.2.3靜態屬性和方法240 
12.2.4構造函數和析構函數241 
12.2.5類的繼承242 
12.2. 6抽像類和接口244 
12.2.7類的魔術方法246 
12.2.8實例——使用類和對象的方式完成郵箱登錄功能250 
12.3小結252 
12.4習題252 
附錄習題答案253