PHP+MySQL動態網站開發案例課堂(第3版)

劉春茂

  • 出版商: 清華大學
  • 出版日期: 2022-12-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • ISBN: 7302622434
  • ISBN-13: 9787302622437
  • 相關分類: MySQLPHPSQL
  • 下單後立即進貨 (約2週~3週)

  • PHP+MySQL動態網站開發案例課堂(第3版)-preview-1
  • PHP+MySQL動態網站開發案例課堂(第3版)-preview-2
  • PHP+MySQL動態網站開發案例課堂(第3版)-preview-3
PHP+MySQL動態網站開發案例課堂(第3版)-preview-1

商品描述

《PHP+MySQL動態網站開發案例課堂(第3版)》是針對零基礎讀者編寫的PHP動態網站開發入門教材。本書側重案例實訓,書中配有微課,讀者可以打開微課視頻,更為直觀地學習有關動態網站開發的熱點案例。 《PHP+MySQL動態網站開發案例課堂(第3版)》分為22章,包括搭建PHP8網站開發環境、PHP的基本語法、程序控制結構、精通函數的應用、PHP數組、字符串和正則表達式、PHP與Web頁面交互、時間和日期、面向對象編程、錯誤處理和異常處理、操作文件與目錄、圖形圖像處理技術、Cookie和Session、MySQL數據庫的基本操作、PHP操作MySQL數據庫、PDO數據庫抽象層、PHP加密技術、PHP與Ajax技術等內容,最後通過4個熱點綜合項目,幫助讀者進一步鞏固項目開發實戰經驗。 通過書中提供的精選熱點案例,可以讓初學者快速掌握PHP動態網站開發技術。通過用微信掃碼觀看視頻,可以隨時在移動端學習網站開發技能。

目錄大綱

目    錄

第1章  搭建PHP8網站開發環境 1

1.1  認識PHP 2

1.1.1  PHP是什麽 2

1.1.2  PHP語言的優勢 2

1.1.3  PHP的應用領域 2

1.1.4  PHP的發展過程 3

1.2  搭建PHP8集成開發環境 4

1.3  PHP開發工具 6

1.3.1  使用記事本 6

1.3.2  使用PhpStorm開發工具 7

1.4  如何能快速學好PHP 11

1.5  疑難解惑 12

1.6  跟我學上機 13

第2章  PHP的基本語法 15

2.1  編 碼 規 範 16

2.1.1  什麽是編碼規範 16

2.1.2  PHP語言標識 16

2.1.3  PHP的一些編碼規範 16

2.2  PHP的數據類型 18

2.2.1  數據類型簡介 18

2.2.2  數據類型之間的相互轉換 19

2.2.3  檢測數據類型 20

2.3  常量 21

2.3.1 聲明和使用常量 21

2.3.2 使用系統預定義常量 22

2.4  變量 23

2.4.1  PHP中的變量聲明 24

2.4.2  可變變量和變量的引用 25

2.5  PHP運算符 26

2.5.1  算術運算符 26

2.5.2  字符串連接符 27

2.5.3  賦值運算符 28

2.5.4  比較運算符 28

2.5.5  邏輯運算符 29

2.5.6  按位運算符 29

2.5.7  否定控制運算符 29

2.5.8  錯誤控制運算符 30

2.5.9  三元運算符 30

2.5.10  合並運算符 30

2.5.11  組合運算符 31

2.5.12  運算符的優先級和結合規則 32

2.6  PHP中的表達式 32

2.7  疑難解惑 32

2.8  跟我學上機 33

第3章  程序控制結構 35

3.1  程 序 結 構 36

3.2  條件控制語句 36

3.2.1  if語句 36

3.2.2  if...else語句 37

3.2.3  elseif語句 38

3.2.4  switch語句 39

3.3  循環控制語句 41

3.3.1  for循環語句 41

3.3.2  while循環語句 42

3.3.3  do...while循環語句 43

3.3.4  流程控制的另一種書寫格式 43

3.4  跳轉語句 45

3.4.1  break語句 45

3.4.2  continue語句 46

3.5  疑難解惑 46

3.6  跟我學上機 47

第4章  精通函數的應用 49

4.1  認 識 函 數 50

4.2  自定義函數 50

4.2.1  定義和調用函數 50

4.2.2  函數中的變量作用域 51

4.3  參數傳遞和返回值 53

4.3.1  向函數傳遞參數值 53

4.3.2  向函數傳遞參數引用 54

4.3.3  函數的返回值 55

4.4  函數的引用和取消 55

4.4.1  引用函數 55

4.4.2  取消函數引用 56

4.5  函數的高級應用技能 56

4.5.1  變量函數 56

4.5.2  銷毀函數中的變量 57

4.6  常用的內置函數 58

4.6.1  數學函數 58

4.6.2  變量相關的函數 59

4.7  包含文件 60

4.7.1  require()和include() 60

4.7.2  include_once()和require_once() 61

4.8  疑難解惑 61

4.9  跟我學上機 62

第5章  PHP數組 63

5.1  什麽是數組 64

5.2  創建數組 64

5.2.1  使用array()函數創建數組 64

5.2.2  通過賦值方式創建數組 65

5.3  數組類型 65

5.3.1  數字索引數組 65

5.3.2  關聯數組 66

5.4  多維數組 66

5.5  遍歷數組 68

5.6  統計數組元素個數 70

5.7  查詢數組中指定元素 70

5.8  獲取並刪除數組中的最後一個元素 71

5.9  獲取並刪除數組中的第一個元素 71

5.10  向數組添加元素 72

5.11  刪除數組中重復的元素 73

5.12  數組的排序 73

5.13  字符串與數組的轉換 75

5.14  調換數組中的鍵值和元素值 76

5.15  疑難解惑 76

5.16  跟我學上機 77

第6章  字符串和正則表達式 79

6.1  定義字符串的方法 80

6.1.1  使用單引號或雙引號定義字符串 80

6.1.2  使用定界符定義字符串 81

6.1.3  字符串的連接符 81

6.2  字符串操作 82

6.2.1  去除字符串首尾空格和特殊字符 82

6.2.2  獲取字符串的長度 84

6.2.3  截取字符串 84

6.2.4  檢索字符串 85

6.2.5  替換字符串 86

6.2.6  分割和合成字符串 87

6.2.7  統計字符串中單詞的個數 88

6.3  正則表達式 88

6.3.1  正則表達式概述 89

6.3.2  行定位符 89

6.3.3  元字符 89

6.3.4  限定符 90

6.3.5  方括號([ ]) 90

6.3.6  連字符(-) 90

6.3.7  選擇字符 91

6.3.8  轉義字符 91

6.3.9  分組 91

6.3.10  認證E-mail的正則表達式 91

6.4  Perl兼容正則表達式函數 92

6.4.1  使用正則表達式對字符串進行匹配 92

6.4.2 使用正則表達式替換字符串的子串 94

6.4.3 使用正則表達式切分字符串 94

6.5  正則表達式在PHP中的應用案例 95

6.6  疑難解惑 96

6.7  跟我學上機 97

第7章  PHP與Web 頁面交互 99

7.1  使用表單 100

7.1.1  HTML表單 100

7.1.2  表單元素 101

7.2  JavaScript表單驗證 103

7.2.1  JavaScript概述 103

7.2.2  調用JavaScript 104

7.2.3  JavaScript表單驗證 105

7.3  PHP獲取表單數據 106

7.3.1  通過POST方式獲取表單數據 106

7.3.2  通過GET方式獲取表單數據 109

7.4  PHP對URL傳遞的參數進行編碼 110

7.5  疑難解惑 111

7.6  跟我學上機 112

第8章  日期和時間 113

8.1  系統時區的設置 114

8.1.1  時區劃分 114

8.1.2  時區設置 114

8.2  PHP的日期和時間函數 114

8.2.1  關於Unix時間戳 114

8.2.2  獲取當前的時間戳 115

8.2.3  獲取當前的日期和時間 115

8.2.4  使用時間戳獲取日期信息 116

8.2.5  檢驗日期的有效性 118

8.2.6  輸出格式化時間戳的日期和時間 118

8.2.7  顯示本地化的日期和時間 120

8.2.8  將日期和時間解析為Unix時間戳 121

8.2.9  日期和時間在PHP和MySQL數據格式之間轉換 121

8.3  日期和時間的綜合應用 121

8.4  疑難解惑 123

8.5  跟我學上機 123

第9章  面向對象編程 125

9.1  認識面向對象 126

9.1.1  什麽是類 126

9.1.2  什麽是對象 126

9.1.3  面向對象編程的特點 127

9.2  類和對象的基本操作 128

9.2.1  定義類 128

9.2.2  成員方法 128

9.2.3  類的實例化 129

9.2.4  成員變量 130

9.2.5  類常量 130

9.2.6  構造方法和析構方法 131

9.2.7  “$this->”和“::”的使用 133

9.2.8  繼承和多態 134

9.2.9  數據封裝 136

9.2.10  靜態變量和方法 138

9.3  對象的高級應用 139

9.3.1  final關鍵字 139

9.3.2  抽象類 139

9.3.3  使用接口 140

9.3.4  檢測對象類型 141

9.3.5  魔術方法(_ _) 142

9.4  匿名類 143

9.5  疑難解惑 144

9.6  跟我學上機 144

第10章  錯誤處理和異常處理 147

10.1  常見的錯誤和異常 148

10.2  錯誤處理 150

10.2.1  php.ini中的錯誤處理機制 150

10.2.2  使用DIE語句調試 151

10.2.3  自定義錯誤和錯誤觸發器 151

10.2.4  錯誤記錄 154

10.3  錯誤的報告方式 155

10.4  異常處理 156

10.4.1  異常的基本處理方法 156

10.4.2  自定義的異常處理器 157

10.4.3  處理多個異常 158

10.4.4  設置頂層異常處理器 159

10.5  疑難解惑 160

10.6  跟我學上機 160

第11章  操作文件與目錄 163

11.1  操作文件 164

11.1.1  打開和關閉文件 164

11.1.2  從文件中讀取內容 165

11.1.3  將數據寫入文件 168

11.1.4  文件的其他操作函數 169

11.2  處理目錄 172

11.2.1  打開和關閉目錄 172

11.2.2  瀏覽目錄 173

11.2.3  目錄的其他操作函數 174

11.3  上傳文件 176

11.3.1  配置php.ini文件 176

11.3.2  預定義變量$_FILES 176

11.3.3  上傳文件的函數 177

11.3.4  多文件上傳 178

11.4  下載文件 180

11.5  疑難解惑 181

11.6  跟我學上機 181

第12章  圖形圖像處理技術 183

12.1  在PHP中加載GD庫 184

12.2  GD庫的應用 187

12.2.1  創建一個簡單的圖像 187

12.2.2  使用GD的函數在照片上添加文字 188

12.2.3  使用圖形圖像技術生成驗證碼 190

12.3  JpGraph庫的基本操作 191

12.3.1  JpGraph的下載 191

12.3.2  JpGraph的中文配置 192

12.3.3  使用JpGraph庫 193

12.4  JpGraph庫的應用 194

12.4.1  製作折線圖 194

12.4.2  製作3D餅形圖 195

12.5  疑難解惑 196

12.6  跟我學上機 197

第13章  Cookie和Session 199

13.1  Cookie的基本操作 200

13.1.1  什麽是Cookie 200

13.1.2  創建Cookie 200

13.1.3  讀取Cookie 201

13.1.4  刪除Cookie 202

13.1.5  Cookie的生命周期 203

13.2  Session管理 204

13.2.1  什麽是Session 204

13.2.2  創建會話 204

13.2.3  註冊會話變量 205

13.2.4  使用會話變量 205

13.2.5  註銷和銷毀會話變量 206

13.3  Session的高級應用 206

13.3.1  Session臨時文件 206

13.3.2  Session緩存限制器 207

13.3.3  儲存Session ID 208

13.4  疑難解惑 208

13.5  跟我學上機 209

第14章  MySQL數據庫的基本操作 211

14.1  啟動phpMyAdmin管理程序 212

14.2  創建數據庫和數據表 212

14.3  MySQL數據庫的基本操作 214

14.3.1  創建數據庫 214

14.3.2  查看數據庫 214

14.3.3  刪除數據庫 215

14.4  MySQL數據表的基本操作 216

14.4.1  創建數據表 216

14.4.2  查看數據表 217

14.4.3  修改數據表 217

14.4.4  刪除數據表 218

14.5  MySQL語句的操作 218

14.5.1  插入記錄 219

14.5.2  查詢記錄 219

14.5.3  修改記錄 220

14.5.4  刪除記錄 221

14.6  為MySQL管理賬號加上密碼 221

14.7  MySQL數據庫的備份與還原 222

14.7.1  對數據庫進行備份 222

14.7.2  對數據庫進行還原 222

14.8  疑難解惑 223

14.9  跟我學上機 223

第15章  PHP操作MySQL數據庫 225

15.1  PHP訪問MySQL數據庫的步驟 226

15.2  操作MySQL數據庫的函數 226

15.2.1  連接MySQL服務器 226

15.2.2  選擇數據庫 227

15.2.3  創建數據庫 228

15.2.4  創建數據表 229

15.2.5  添加一條數據記錄 231

15.2.6  一次插入多條數據 232

15.2.7  讀取數據 233

15.2.8  釋放資源 235

15.2.9  關閉連接 235

15.3  管理MySQL數據庫中的數據 235

15.3.1  添加商品信息 235

15.3.2  查詢商品信息 237

15.4  疑難解惑 240

15.5  跟我學上機 240

第16章  PDO數據庫抽象層 241

16.1  PDO是什麽 242

16.2  安裝PDO 242

16.3  PDO連接數據庫 243

16.4  PDO中執行SQL語句 245

16.5  PDO中獲取結果集 246

16.5.1  fetch()方法 246

16.5.2  fetchAll()方法 247

16.5.3  fetchColumn()方法 248

16.6  PDO中捕獲SQL語句中的錯誤 249

16.6.1  警告模式 249

16.6.2  異常模式 250

16.7  PDO中的錯誤處理 251

16.8  防止SQL註入的攻擊 251

16.9  PDO中的事務處理 252

16.10  疑難解惑 253

16.11  跟我學上機 254

第17章  PHP加密技術 255

17.1  使用PHP加密函數 256

17.1.1  使用md5()函數進行加密 256

17.1.2  使用crypt()函數進行加密 256

17.1.3  使用sha1()函數進行加密 257

17.2  使用Mhash擴展庫 258

17.3  疑難解惑 259

17.4  跟我學上機 259

第18章  PHP與Ajax技術 261

18.1  Ajax概述 262

18.1.1  什麽是Ajax 262

18.1.2  Ajax的工作過程 264

18.1.3  Ajax的關鍵元素 264

18.1.4  Ajax的優缺點 265

18.2  Ajax的核心技術 266

18.2.1  全面剖析XMLHttpRequest對象 266

18.2.2  發出Ajax請求 268

18.2.3  處理服務器響應 269

18.3  Ajax技術在PHP中的經典應用 270

18.3.1  應用Ajax技術檢查用戶名 270

18.3.2  應用Ajax技術實現投票功能 273

18.4  疑難解惑 276

18.5  跟我學上機 276

第19章  項目實訓1——開發網站驗證碼系統 279

19.1 系統分析 280

19.1.1 學習目標 280

19.1.2 需求分析 280

19.1.3 系統文檔結構 280

19.2 系統的代碼實現 281

19.2.1 系統主界面 281

19.2.2 生成並輸入驗證碼功能 283

19.2.3 驗證碼控制器 283

19.3  系統測試 286

第20章  項目實訓2——開發個人博客系統 289

20.1 系統的需求分析 290

20.1.1 學習目標 290

20.1.2 需求分析 290

20.1.3 系統文檔結構 290

20.2 數據庫分析 291

20.2.1 分析數據庫 291

20.2.2 創建數據表 291

20.3 個人博客系統的代碼實現 292

20.3.1 博客數據模型的文件 292

20.3.2 個人博客系統的主頁面 296

20.3.3 個人博客新建和修改頁面 297

20.3.4 個人博客刪除頁面 300

20.4 系統測試 300

第21章  項目實訓3——開發網上訂餐系統 303

21.1  系統功能描述 304

21.2  系統功能分析和設計數據庫 304

21.2.1  系統功能分析 304

21.2.2  數據流程和數據庫 305

21.3  代碼的具體實現 308

21.4  程序運行 317

第22章  項目實訓4——開發學校教務選課管理系統 319

22.1  系統功能描述 320

22.2  系統功能分析 320

22.2.1  系統功能分析 321

22.2.2  數據流程和數據庫 321

22.3  代碼的具體實現 323

22.3.1  用戶的登錄和驗證界面 323

22.3.2  數據庫連接頁面 325

22.3.3  登錄註冊頁面 325

22.3.4  選課系統主界面 327

22.3.5  添加學生頁面 330

22.3.6  添加課程頁面 331

22.3.7  瀏覽課程頁面 332

22.3.8  選擇課程頁面 332

22.3.9  刪除課程頁面 334

22.3.10  修改學生信息頁面 334

22.4  系統測試 336