【課程簡介】
(一)本門課程是一門重要的專業(yè)技能課程,也是一門實踐性很強的課程。課程主要講解PHP的相關知識及PHP在WEB應用程序開發(fā)中的實際應用,通過具體案例,使學生鞏固數(shù)據(jù)庫、網(wǎng)頁制作等專業(yè)知識,更好地進行開發(fā)實踐。
(二)通過該課程的學習,使學生掌握動態(tài)網(wǎng)頁制作的基本操作技能,并能熟練應用于中小型動態(tài)網(wǎng)站的建設中,在項目實踐中提高學生的動手能力和創(chuàng)新能力。
【課堂環(huán)境】
【課程內(nèi)容與教學基本要求】
部分 PHP入門 4學時
教學目的: 通過學習,學生可以了解PHP程序的工作流程,并可以編寫、運行簡單的PHP程序。
【了解】:PHP優(yōu)勢以及應用領域、內(nèi)嵌式腳本語言
【掌握】:在windows中安裝、配置PHP開發(fā)環(huán)境以及運行環(huán)境
【重點】:PHP程序工作流程以及PHP運行環(huán)境的安裝、配置
【難點】:PHP程序的工作流程
在windows中配置Apache、PHP以及MySQL。
解鎖個PHP程序的工作流程
第二部分 PHP基礎 4學時
教學目的: 通過學習,學生可以從整體上認識PHP程序的各個組成部分,并可以制作功能簡單的用戶注冊系統(tǒng)。
【了解】:PHP代碼基本語法、以及基本的編碼規(guī)范
【掌握】:PHP程序的組成
基本的程序格式與輸出語句
【重點】:PHP數(shù)據(jù)、PHP數(shù)據(jù)類型、瀏覽器端的數(shù)據(jù)采集、PHP程序的數(shù)據(jù)采集、PHP數(shù)據(jù)處理、PHP數(shù)據(jù)的輸出
【難點】:編程規(guī)范習慣的養(yǎng)成
PHP數(shù)據(jù)、PHP數(shù)據(jù)類型、瀏覽器端的數(shù)據(jù)采集、PHP程序的數(shù)據(jù)采集、PHP數(shù)據(jù)處理、PHP數(shù)據(jù)的輸出
第三部分 PHP表達式 4學時
教學目的:通過學習,學生可以了解變量、常量、常用運算符、變量狀態(tài)函數(shù)以及類型轉換的相關知識,為今后設計更為復雜的程序奠定堅實的基礎。
【了解】:常量、變量的特點以及在內(nèi)存的表現(xiàn)形式
【掌握】:有關變量或常量狀態(tài)的函數(shù)、PHP運算符、數(shù)據(jù)類型的轉換
【重點】:isset()函數(shù)、unset()函數(shù)、empty()函數(shù)的使用
字符串連接運算符、錯誤抑制符、比較運算符等運算符的使用
數(shù)據(jù)類型的轉換
【難點】:理解“空”與NULL的區(qū)別
數(shù)據(jù)類型的自動轉換
第四部分 PHP流程控制 4學時
教學目的:通過學習,學生可以了解條件控制結構、循環(huán)結構以及程序跳轉和終止語句3種類型的PHP流程控制語句,這3種類型的流程控制構成了面向過程編程的核心。通過學習,為今后設計更為復雜的程序奠定堅實的基礎。
【了解】:條件控制語句、循環(huán)語句、程序跳轉以及終止語句
【掌握】: if…else…語句、switch語句、while語句以及break語句、continue語句、exit語句。
【重點】: if…else…語句、switch語句、while語句以及break語句、continue語句、exit語句。
【難點】:switch語句、while語句以及break語句、continue語句、exit語句
第五部分 PHP數(shù)組 4學時
教學目的:通過學習,學生可以了解數(shù)組的基本概念以及數(shù)組常用的處理函數(shù),并掌握幾種數(shù)組遍歷方法。
【了解】:數(shù)組的基本概念、數(shù)組的創(chuàng)建
【掌握】:數(shù)組的創(chuàng)建、數(shù)組的遍歷各種方法、常用數(shù)組函數(shù)的使用
【重點】:數(shù)組的遍歷foreach語言結構、常用數(shù)組函數(shù)的使用、數(shù)組內(nèi)部指針
【難點】:各種數(shù)組遍歷的方法
常用數(shù)組函數(shù)的使用,例如快速創(chuàng)建數(shù)組的函數(shù)、數(shù)組統(tǒng)計函數(shù)、數(shù)組指針函數(shù)、數(shù)組和變量間的轉換函數(shù)、數(shù)組遍歷語言結構、數(shù)組檢索函數(shù)
第六部分 PHP的數(shù)據(jù)采集 4學時
教學目的:通過學習,學生可以了解瀏覽器端數(shù)據(jù)的各種提交方式,如何創(chuàng)建FORM表單實現(xiàn)瀏覽器端的數(shù)據(jù)采集, PHP程序各種數(shù)據(jù)采集的方法,以及如何實現(xiàn)文件的上傳功能。通過本章的學習,讀者可以結合PHP數(shù)組實現(xiàn)功能復雜的“用戶注冊系統(tǒng)”。
【了解】:瀏覽器端數(shù)據(jù)的提交方式、相對路徑和路徑、使用FORM表單實現(xiàn)瀏覽器端的數(shù)據(jù)采集、使用$_GET和$_POST“采集”表單數(shù)據(jù)、上傳文件的“數(shù)據(jù)采集”以及WEB服務器端其他數(shù)據(jù)采集方法
【掌握】:GET以及POST提交方式的區(qū)別、相對路徑和路徑的區(qū)別
【重點】:設計FORM表單、文件上傳的表單的設計以及如何實現(xiàn)文件上傳功能
【難點】:在FORM表單中使用數(shù)組
文件上傳的具體流程、與文件上傳有關的配置
多文件上傳的實現(xiàn)(可以參考習題以及習題答案)
第七部分 PHP自定義函數(shù) 4學時
教學目的:通過學習,學生可以了解PHP文件間相互引用的4個PHP語言結構,如何創(chuàng)建和調(diào)用用戶自定義函數(shù),創(chuàng)建具有文件上傳功能的自定義函數(shù),重構“用戶注冊系統(tǒng)”的代碼,增強代碼重用性。
【了解】:PHP文件間相互引用的4個PHP語言結構、創(chuàng)建和調(diào)用用戶自定義函數(shù)、static關鍵字以及global關鍵字的作用
【掌握】:include_once與include語言結構的區(qū)別
static關鍵字以及global關鍵字的使用
return語言結構的使用
【重點】:設計具有文件上傳功能的自定義函數(shù),重構“用戶注冊系統(tǒng)”的代碼設計
【難點】:static關鍵字以及global關鍵字的使用
return語言結構的使用
如何使用函數(shù)增強代碼重用性
第八部分 MySQL數(shù)據(jù)庫 4學時
教學目的:通過學習,學生可以了解數(shù)據(jù)庫的功能、數(shù)據(jù)庫常用的專業(yè)術語、常用的SQL語句。通過具體案例學生管理系統(tǒng)設計該系統(tǒng)的數(shù)據(jù)庫,通過學習,學生具備簡單數(shù)據(jù)庫系統(tǒng)設計與開發(fā)的能力,為今后設計更為復雜的應用系統(tǒng)奠定堅實的基礎。
【了解】:數(shù)據(jù)庫的基本概念、專業(yè)術語,數(shù)據(jù)庫設計流程、MySQL的基本知識
【掌握】:MySQL存儲引擎的概念以及常用的存儲引擎
MySQL字符集的設置
MySQL數(shù)據(jù)庫管理
表的管理
更新操作
查詢操作
【重點】:數(shù)據(jù)庫的設計流程,如何設計E-R圖
主鍵、外鍵、約束等專業(yè)術語在MySQL數(shù)據(jù)庫中的實現(xiàn)
常用的存儲引擎例如MyISAM存儲引擎、InnoDB存儲引擎
MySQL字符集的設置
MySQL數(shù)據(jù)庫管理、表的管理、更新操作、查詢操作
【難點】:數(shù)據(jù)庫的設計流程、開發(fā)流程
如何設計數(shù)據(jù)庫表、如何選擇數(shù)據(jù)庫表的主鍵
如何防止中文亂碼問題
Create語句、drop語句的使用
Select語句的使用、insert語句、update語句、delete語句的使用
如何實現(xiàn)分頁
MySQL特殊字符序列
第九部分 PHP與MySQL數(shù)據(jù)庫 8學時
教學目的:結合學生管理系統(tǒng)數(shù)據(jù)庫,通過學習,學生可以了解使用PHP函數(shù)實現(xiàn)PHP與MySQL數(shù)據(jù)庫之間的交互過程,并以用戶注冊系統(tǒng)為例學習該系統(tǒng)的實現(xiàn)過程。通過學習,學生可以具備簡單WEB應用系統(tǒng)設計與開發(fā)的能力。
【了解】:PHP中常用的MySQL操作函數(shù)
【掌握】:數(shù)據(jù)庫連接函數(shù)的使用
字符集設置的方法
結果集遍歷函數(shù)的使用
【重點】:如何開啟數(shù)據(jù)庫連接、如何關閉數(shù)據(jù)庫連接、關閉數(shù)據(jù)庫連接的時機
字符集設置的方法
結果集遍歷函數(shù)的使用
用戶注冊系統(tǒng)的實現(xiàn)
【難點】:關閉數(shù)據(jù)庫連接的時機
如何防止SQL注入問題
第十部分 新聞發(fā)布系統(tǒng)的開發(fā) 8學時
教學目的:通過學習,學生可以了解傳統(tǒng)的結構化方法開發(fā)MIS系統(tǒng)的方法、流程以及分頁函數(shù)的制作過程,并具備復雜WEB應用系統(tǒng)設計與開發(fā)的能力。
【了解】:結構化方法開發(fā)MIS系統(tǒng)的開發(fā)步驟
【掌握】:結構化方法開發(fā)MIS系統(tǒng)的開發(fā)步驟
新聞發(fā)布系統(tǒng)系統(tǒng)規(guī)劃步驟
新聞發(fā)布系統(tǒng)系統(tǒng)系統(tǒng)分析步驟
新聞發(fā)布系統(tǒng)系統(tǒng)設計步驟
新聞發(fā)布系統(tǒng)系統(tǒng)實施步驟
分頁的原理
【重點】:新聞發(fā)布系統(tǒng)系統(tǒng)編碼實施
分頁的原理以及實現(xiàn)
【難點】:新聞發(fā)布系統(tǒng)系統(tǒng)編碼實施
分頁的實現(xiàn)以及分頁函數(shù)的制作
第十一部分 PHP會話控制 4學時
教學目的:通過學習,學生可以掌握PHP頁面間參數(shù)傳遞的所有方法,頁面跳轉的方法,使用Cookie和Session實現(xiàn)PHP會話控制的方法,結合“新聞發(fā)布系統(tǒng)”使用Cookie和Session實現(xiàn)該系統(tǒng)安全訪問與權限控制。
【了解】:PHP頁面間參數(shù)傳遞的方法、重定向的概念、會話控制的概念
【掌握】:Cookie會話技術
Session會話技術
header()函數(shù)的使用
重定向的實現(xiàn)
文件下載的實現(xiàn)
【重點】:使用Cookie會話技術以及Session會話技術,結合新聞發(fā)布系統(tǒng)系統(tǒng)實現(xiàn)該系統(tǒng)的安全訪問與權限控制。
文件下載的實現(xiàn)
使用header()函數(shù)控制服務器響應的內(nèi)容
【難點】:Cookie與Session的使用場景
關閉瀏覽器Cookie,如何實現(xiàn)會話控制?
如何實現(xiàn)文件下載?
使用header()函數(shù)控制服務器響應的內(nèi)容
瀏覽器緩存的遠程控制
第十二部分 字符串處理 4學時
教學目的:通過學習,學生可以掌握PHP提供的字符串處理函數(shù),結合新聞發(fā)布系統(tǒng),修改該系統(tǒng)的幾處bug、增強該系統(tǒng)的功能。
【了解】:字符串的指定方法、字符串處理函數(shù)
【掌握】:字符串三種指定方法
常用的字符串處理函數(shù)
【重點】:字符串修剪函數(shù)的使用
字符串長度函數(shù)的使用
子字符串操作函數(shù)的使用
字符串比較函數(shù)的使用
字符串連接和分割函數(shù)的使用
字符串替換函數(shù)的使用
URL處理函數(shù)的使用
【難點】:字符串中的字符處理
在新聞發(fā)布系統(tǒng)中,如何修改該系統(tǒng)的bug、增強該系統(tǒng)的功能。
第十三部分 新聞發(fā)布系統(tǒng)的頁面美工 8學時
教學目的:通過學習,學生可以掌握新聞發(fā)布系統(tǒng)頁面美工的相關知識,在線編輯器FCKeditor的使用,使用DIV + CSS實現(xiàn)網(wǎng)頁布局和樣式的方法以及如何將動態(tài)PHP頁面代碼嵌入到靜態(tài)網(wǎng)頁布局中。通過學習,學生可以制作一個美觀大方的新聞發(fā)布系統(tǒng)。
【了解】:JavaScript腳本語言、FCKeditor在線編輯器、新聞發(fā)布系統(tǒng)頁面布局的實現(xiàn)、新聞發(fā)布系統(tǒng)靜態(tài)和動態(tài)頁面的嵌入
【掌握】:簡單JavaScript函數(shù)的制作
FCKeditor在線編輯器的使用
DIV+CSS的使用
靜態(tài)代碼與動態(tài)代碼的嵌入
【重點】:FCKeditor在線編輯器的二次開發(fā)
如何使用DIV+CSS實現(xiàn)頁面布局
如何實現(xiàn)靜態(tài)和動態(tài)頁面的嵌入
【難點】:FCKeditor的配置
FCKeditor在新聞發(fā)布系統(tǒng)中的應用
FCKeditor的文件管理(上傳、瀏覽)
使用DIV+CSS實現(xiàn)新聞發(fā)布系統(tǒng)頁面布局
靜態(tài)和動態(tài)頁面的嵌入