關(guān)于我們
書單推薦
新書推薦
|
MySQL基礎(chǔ)教程(圖靈出品)
本書介紹了MySQL的操作方法以及通過使用PHP和MySQL創(chuàng)建Web應(yīng)用程序的基礎(chǔ)知識。作者從數(shù)據(jù)庫是什么開始講起,由淺入深,通過豐富的圖示和大量的示例程序,讓讀者循序漸進地掌握MySQL,最終帶領(lǐng)讀者使用MySQL和PHP開發(fā)能夠在Web上公開的具有安全性的Web應(yīng)用程序。
1.本書是日本公認的MySQL入門教程,原版長銷13年,好評如潮,本書是第3次改版
西澤夢路(作者)
生于埼玉縣。技術(shù)寫作人,同時也是一名大學研究員。主要研究領(lǐng)域為信息教育。著有《Oracle基礎(chǔ)教程》《PHP基礎(chǔ)教程》等。 盧克貴(譯者) Oracle數(shù)據(jù)庫技術(shù)支持工程師。Oracle全球客戶支持(GCS大連)數(shù)據(jù)庫性能與安全日語組組長,中文Tier1工程師。
第1 部分.初識MySQL.1
第1 章 MySQL 的概要 2 1.1 數(shù)據(jù)庫的概要 2 1.1.1 數(shù)據(jù)庫是什么 2 1.1.2 關(guān)系數(shù)據(jù)庫是什么 3 1.1.3 數(shù)據(jù)庫的特征 4 1.2 MySQL 是什么樣的數(shù)據(jù)庫 . 5 1.2.1 MySQL 是開源軟件 5 1.2.2 MySQL 的歷史 5 1.2.3 MySQL 的兩種版本 6 1.2.4 MySQL 的特征 6 1.3 SQL 的概要 . 8 1.3.1 什么是SQL 8 1.3.2 首先熟悉SELECT 命令 8 1.4 總結(jié) . 9 第2 章 MySQL 10 2.1 本書中使用的應(yīng) 10 專欄 XAMPP . 11 2.2 學習MySQL 前的準備(安裝和配置) 11 2.2.1 關(guān)于本書使用的MAMP. 11 12 專欄 如果文件的擴展名未. 12 2.2.3 MAMP 的啟動和設(shè)置16 專欄 什么是localhost 19 2.2.4 確認開 19 2.2.5 構(gòu)成MAMP 的文件夾 20 2.3 MySQL 的路徑設(shè)置 21 2.4 關(guān)于中文的設(shè)置 23 2.4.1 MySQL 的字符編碼設(shè)置. 24 2.4.2 修改my.ini . 24 2.5 本書中使用的表 25 2.5.1 銷售信息表tb(按員工號統(tǒng)計的月銷售額) 26 2.5.2 員工信息表tb1(各員工號代表的員工的姓名、年齡) 26 2.6 總結(jié) 27 專欄 關(guān)于macOS 版的MAMP 27 第2 部分.MySQL 的基礎(chǔ)知識.29 第3 章 MySQL 監(jiān)視器 30 3.1 創(chuàng)建數(shù)據(jù)庫前的準備事項 30 3.2 什么是MySQL 監(jiān)視器 . 30 3.3 啟動MySQL 監(jiān)視器 31 3.3.1 啟動終端軟件 31 3.3.2 啟動MySQL 監(jiān)視器 . 32 專欄 命令提示符的UTF-8 設(shè)置 33 3.3.3 當MySQL 監(jiān)視器無法啟動時 34 專欄 全角空格和半角空格. 34 3.3.4 確認MySQL 中字符編碼的設(shè)置情況 34 3.4 MySQL 監(jiān)視器的退出操作和密碼設(shè)置 35 3.4.1 退出MySQL 監(jiān)視器 . 35 3.4.2 使用歷史命令 36 3.4.3 安全地輸入密碼 36 專欄 mysql 命令的選項 37 3.5 設(shè)置MySQL 管理員root 的密碼 37 3.5.1 修改root 用戶的密碼 . 37 3.5.2 修改MAMP 的設(shè)置 38 3.5.3 修改phpMyAdmin 的設(shè)置 38 3.6 總結(jié). 39 專欄 PowerShell 和命. 40 第4 章 創(chuàng)建數(shù)據(jù)庫. 41 4.1 創(chuàng)建數(shù)據(jù)庫. 41 4.1.1 創(chuàng)建數(shù) 41 專欄 在租賃服務(wù)器上使用MySQL . 42 4.2 確認創(chuàng)建的數(shù)據(jù)庫. 43 4.2.1 確認數(shù)據(jù)庫 43 4.2.2 test 和mysql 數(shù)據(jù)庫 44 4.3 指定使用的數(shù)據(jù)庫. 44 4.3.1 指定數(shù)據(jù)庫 44 專欄 選擇數(shù)據(jù)庫啟動MySQL 監(jiān)視器 45 4.4 創(chuàng)建表tb1 45 4.4.1 列和字段. 46 4.4.2 數(shù)據(jù)類型. 46 4.4.3 創(chuàng)建表 46 專欄 使用`` 把數(shù)據(jù)庫名括起來 47 4.5 顯示所有的表 47 4.5.1 顯示所有的表 47 專欄 訪問其他數(shù)據(jù)庫 48 4.6 確認表的列結(jié)構(gòu) 49 4.6.1 確認表的列結(jié)構(gòu). 49 專欄 特殊的SHOW 50 4.7 向表中插入數(shù)據(jù) 50 4.7.1 插入數(shù)據(jù). 50 4.7.2 向表tb1 中添加第2 條記錄 52 4.7.3 指定列名插入記錄 53 4.7.4 一次性輸入記錄. 53 4.8 顯示數(shù)據(jù) 54 4.8.1 顯示數(shù)據(jù). 54 4.9 (準備)復制表tb1 56 4.10 總結(jié) 57 專欄 MySQL 的文檔. 59 第5 章 數(shù)據(jù)類型和數(shù)據(jù)輸入 60 5.1 什么是數(shù)據(jù)類型 60 5.2 數(shù)值類型 61 5.2.1 數(shù)值類型的種類. 61 5.2. 62 5.3 字符串類型. 62 5.3.1 字符串類型的種類 62 5.3.2 輸入字符串 63 5.3.3 VARCHAR 和CHAR 的位數(shù)單位 63 5.4 日期與時間類型 63 5.4.1 日期與時間類型的種類. 63 5.4.2 輸入日期與時間類型的數(shù)據(jù) 64 專欄 修改提示符的字符串. 65 5.5 總結(jié). 66 第6 章 修改表 68 6.1 修改表的列結(jié)構(gòu) 68 6.1.1 ALTER TABLE 命令68 6.2 修改列的數(shù)據(jù)類型. 69 專欄 修改數(shù)據(jù)類型要慎重. 70 6.3 添加列 70 6.3.1 添加員工信息記錄 72 6.4 修改列的位置 73 6.4.1 把列添加到最前面 73 6.4.2 把列添加到任意位置 74 6.4.3 修改列的順序 74 6.5 修改列名和數(shù)據(jù)類型 75 6.5.1 修改列的數(shù)據(jù)類型或位置的同時也修改列名. 75 6.6 刪除列 77 專欄 故意輸入超過指定數(shù)量的字符 78 6.7 設(shè)置主鍵 78 6.7.1 什么是唯一 78 6.7.2 什么是主鍵 79 6.7.3 創(chuàng)建主鍵. 79 6.7.4 確認主鍵. 80 6.7.5 設(shè)置唯一鍵 81 6.8 使列具有自動連續(xù)編號功能 82 6.8.1 具有自動連續(xù)編號功能的列的定義 82 6.8.2 創(chuàng)建具有自動連續(xù)編號功能的列 82 專欄 其他RDBMS 中自動連續(xù)編號功能的設(shè)置 83 6.9 使用自動連續(xù)編號功能插入記錄. 84 6.9.1 確認插入的數(shù)據(jù). 85 6.10 設(shè)置連續(xù)編號的初始值 85 6.10.1 連續(xù)編號的初始化. 85 6.11 設(shè)置列的默認值 87 6.11.1 修改列結(jié)構(gòu)的定義. 87 6.11.2 輸入數(shù)據(jù) 88 專欄 數(shù)據(jù)庫的實體是什么. 89 6.12 創(chuàng)建索引 91 6.12.1 什么是索引. 91 6.12.2 創(chuàng)建索引 91 6.12.3 顯示索引 91 6.12.4 刪除索引 92 專欄 索引和處理速度的關(guān)系 93 6.13 總結(jié) 93 第7 章 復制、刪除表和記錄 96 7.1 復制表的列結(jié)構(gòu)和記錄 96 7.2 將表的列結(jié)構(gòu)和記錄整個復制過來 96 7.2.1 復制表的列結(jié)構(gòu)和記錄. 97 7.3 僅復制表的列結(jié)構(gòu). 98 7.3.1 僅復制表的列結(jié)構(gòu) 98 7.4 復制其他表的記錄 100 7.4.1 復制其他表的記錄. 100 7.5 選擇某一列進行復制. 101 7.6 刪除表、數(shù)據(jù)庫和記錄 102 7.7 刪除表. 102 7.7.1 當目標表存在時將其刪除. 104 7.8 刪除數(shù)據(jù)庫 104 7.9 刪除所有記錄. 104 專欄 不使用MySQL 監(jiān)視器操作MySQL 106 專欄 多行輸入. 107 7.10 總結(jié) 107 第3 部分.熟練使用MySQL111 第8 章 使用各種條件進行提取112 8.1 設(shè)計列的顯示內(nèi)容并執(zhí)行SELECT 112 8.1.1 準備表tb 112 8.1.2 改變列的顯示順序 113 8.1.3 使用別名 114 8.2 計算列值或處理字符串之后顯示列 116 8.2.1 使用列值進行計算并顯示 116 8.2.2 使用函數(shù)進行計算 118 8.2.3 用于顯示各種信息的函數(shù) 120 專欄 計算圓的面積 121 8.2.4 連接字符串 121 8.2.5 字符串操作中常用的函數(shù) 122 8.2.6 日期和時間函數(shù) 124 8.3 設(shè)置條件進行顯示 125 8.3.1 確定記錄數(shù)并顯示 126 8.3.2 使用WHERE 提取記錄 . 127 8.3.3 比較運算符 128 8.3.4 使用字符串作為條件 . 130 8.3.5 使用NULL 作為條件 132 專欄 刪除多余的記錄 133 8.4 指定多個條件進行選擇 . 134 8.4.1 使用AND 134 8.4.2 使用OR . 135 8.4.3 使用多個AND 或OR 137 8.4.4 使用CASE WHEN 138 8.5 排序 141 8.5.1 按升序排序并顯示 141 8.5.2 按降序排序并顯示 143 8.5.3 指定記錄的顯示范圍 . 144 8.6 分組顯示 . 146 8.6.1 分組顯示 146 8.6.2 計算各組的記錄數(shù) 147 8.6.3 顯示各組的總和以及平均值 . 148 8.7 設(shè)置條件分組顯示 150 8.7.1 按組處理 150 8.7.2 提取記錄后分組 152 8.7.3 分組后排序. 154 8.7.4 分組方法總結(jié) 155 8.8 總結(jié) 157 專欄 WHERE 和HAVING. 160 第9 章 編輯數(shù)據(jù)161 9.1 更新記錄 161 9.1.1 瞬間更新列中所有的記錄. 161 專欄 防止意外執(zhí)行UPDATE 和DELETE 163 9.1.2 只修改符合條件的記錄 163 9.1.3 將銷售額最低的3 條記錄的備注修改為“加油!” 165 9.2 復制符合條件的記錄. 167 9.2.1 僅復制指定記錄 167 9.2.2 排序后復制. 169 9.3 刪除符合條件的記錄. 170 9.3.1 刪除所有記錄(復習) 170 9.3.2 刪除指定的記錄 171 9.3.3 排序后刪除. 172 9.4 總結(jié) 173 專欄 數(shù)據(jù)庫的運用方法 176 第10 章 使用多個表177 10.1 顯示多個表的記錄 177 10.1.1 確認本章示例中使用的多個表 177 10.1.2 顯示多條提取結(jié)果 178 10.1.3 使用UNION 合并3 個以上的表 180 10.1.4 按條件合并多條提取結(jié)果進行顯示. 181 10.1.5 合并顯示多條提取結(jié)果(允許重復) 183 10.2 連接多個表并顯示(內(nèi)連接). 184 10.2.1 使用其他表的記錄進行處理. 184 專欄 有“內(nèi)連接”的話是不是也有“外連接”呢. 187 10.2.2 選擇列進行顯示 187 10.2.3 給表添加別名. 188 10.2.4 使用USING 使ON ~的部分更容易閱讀. 190 10.2.5 通過WHERE 設(shè)置條件從連接表中提取記錄. 191 10.2.6 提取多個表中的記錄. 192 10.3 顯示多個表的所有記錄(外連接) 196 10.3.1 什么是外連接. 196 10.3.2 外連接的種類. 197 10.3.3 使用左外連接. 198 10.3.4 使用右外連接. 201 10.3.5 避免混合使用左外連接和右外連接. 203 專欄 加上OUTER 后的書寫方法 203 10.4 自連接 203 10.4.1 什么是自連接. 203 10.4.2 排序的技巧其一 206 10.5 從SELECT 的記錄中SELECT(子查詢) 208 10.5.1 什么是子查詢. 208 10.5.2 顯示最大值(返回值的子查詢其一) 209 專欄 GROUP BY 函數(shù) 212 10.5.3 提取大于等于平均值的記錄(返回值的子查詢其二) 212 10.5.4 使用IN(返回列的子查詢). 213 專欄 子查詢和內(nèi)連接的提取結(jié)果的差異(雖然相似但不同!) 215 10.5.5 使用“=”代替IN 會報錯嗎. 216 10.5.6 使用EXISTS,僅以存在的記錄為對象 218 10.5.7 NOT EXISTS 219 10.5.8 排序的技巧其二 221 10.6 總結(jié) 224 第11 章 熟練使用視圖.227 11.1 什么是視圖 227 11.1.1 視圖的真面目. 227 11.1.2 視圖的用途 227 專欄 視圖和MySQL 的版本 228 11.2 使用視圖. 229 11.2.1 創(chuàng)建視圖 229 11.2.2 通過視圖更新列的值. 230 11.3 設(shè)置條件創(chuàng)建視圖 232 11.3.1 設(shè)置條件創(chuàng)建視圖 232 11.3.2 當更新基表時,視圖會發(fā)生什么變化 234 11.3.3 確認視圖 236 11.4 限制通過視圖寫入 238 11.4.1 對視圖執(zhí)行INSERT 操作會出現(xiàn)什么樣的結(jié)果. 238 11.4.2 設(shè)置了條件的基表中會發(fā)生什么變化 240 11.4.3 當與視圖的條件不匹配時報錯 242 11.5 替換、修改和刪除視圖. 243 11.5.1 替換視圖 243 11.5.2 修改視圖結(jié)構(gòu). 244 11.5.3 刪除視圖 245 專欄 什么是復制 245 11.6 總結(jié) 247 第12 章 熟練使用存儲過程250 12.1 什么是存儲過程. 250 12.1.1 可用的版本 250 12.1.2 什么是存儲過程 250 12.2 使用存儲過程 251 12.2.1 創(chuàng)建存儲過程. 251 12.2.2 執(zhí)行存儲過程 254 12.2.3 創(chuàng)建只顯示大于等于指定值的記錄的存儲過程 255 專欄 在參數(shù)中加上IN 的例子 257 12.3 顯示、刪除存儲過程. 258 12.3.1 顯示存儲過程的內(nèi)容. 258 12.3.2 刪除存儲過程. 258 12.4 什么是存儲函數(shù) 259 12.4.1 可用版本. 259 12.4.2 什么是存儲函數(shù) 259 12.5 使用存儲函數(shù) 260 12.5.1 使用存儲函數(shù)之前 260 12.5.2 使用存儲函數(shù)計算標準體重 261 12.5.3 返回記錄平均值的存儲函數(shù). 264 12.5.4 顯示和刪除存儲函數(shù). 266 12.6 什么是觸發(fā)器. 267 12.6.1 什么是觸發(fā)器. 267 12.7 創(chuàng)建觸發(fā)器 268 12.7.1 觸發(fā)器被觸發(fā)的時機. 268 12.7.2 創(chuàng)建觸發(fā)器 269 12.7.3 觸發(fā)器的內(nèi)容 272 12.8 確認和刪除觸發(fā)器. 273 12.8.1 確認設(shè)置的觸發(fā)器 273 12.8.2 刪除觸發(fā)器. 274 12.9 總結(jié). 274 第13 章 熟練使用事務(wù)277 13.1 什么是存儲引擎 277 13.1.1 什么是存儲引擎. 277 13.1.2 存儲引擎的種類 278 13.2 設(shè)置存儲引擎 278 13.2.1 確認存儲引擎 278 專欄 使用“\\G”代替“;” 279 13.2.2 修改存儲引擎 280 13.3 什么是事務(wù). 281 13.4 使用事務(wù) 282 13.4.1 執(zhí)行前的注意事項 282 13.4.2 開啟事務(wù) 282 13.4.3 確認表的內(nèi)容 284 13.5 自動提交功能 285 13.5.1 關(guān)閉自動提交功能. 286 13.5.2 啟動已關(guān)閉的自動提交功能 287 專欄 如何確認當前自動提交功能的模式?. 288 13.5.3 事務(wù)的使用范圍 288 13.6 總結(jié). 288 第14 章 使用文件進行交互.291 14.1 從文本文件中讀取數(shù)據(jù)(導入). 291 14.1.1 CSV 文件. 291 14.1.2 導入和導出的準備 292 14.1.3 導入文件. 293 專欄 導入GB 2312 的文本文件. 296 14.1.4 將數(shù)據(jù)寫入文本文件(導出). 296 14.1.5 導出文件 297 14.2 從文件中讀取并執(zhí)行SQL 命令. 298 14.2.1 通過MySQL 監(jiān)視器執(zhí)行編寫在文件中的SQL 語句 298 專欄 將常用表的內(nèi)容保存到文件中 301 14.2.2 通過命令提示符執(zhí)行編寫在文件中的SQL 命令 302 專欄 在批處理文件中記錄SQL 命令 . 304 14.3 將SQL 的執(zhí)行結(jié)果保存到文件中 . 304 14.3.1 通過重定向?qū)QL 語句的執(zhí)行結(jié)果輸出到文本文件中 304 專欄 使用重定向輸入SQL 語句,并通過重定向?qū)⒔Y(jié)果輸出到文件 307 14.3.2 使用tee 命令將SQL 語句的執(zhí)行結(jié)果保存到文件中 307 14.4 備份和恢復數(shù)據(jù)庫 309 14.4.1 備份和恢復的方法 309 14.4.2 使用mysqldump 導出 310 專欄 恢復作業(yè)失敗的情況 312 14.4.3 恢復轉(zhuǎn)儲文件 . 313 14.4.4 字符編碼問題 . 315 專欄 鎖表 315 14.5 總結(jié) 316 第4 部分.MySQL+PHP 的基礎(chǔ).319 第15 章 用于控制MySQL 的PHP.320 15.1 要創(chuàng)建的示例 . 320 15.2 在Web 應(yīng)用程序中使用MySQL 321 15.3 使用Web 時需要用到的機制 321 15.3.1 Web 服務(wù)器和客戶端 321 15.3.2 Web 服務(wù)器的作用 322 15.3.3 Apache 和Web 服務(wù)器 . 322 專欄 有狀態(tài)協(xié)議 . 323 15.4 靜態(tài)頁面和動態(tài)頁面 323 15.5 在Web 上運行的程序 324 15.5.1 CGI . 324 15.5.2 腳本 . 324 15.6 什么是PHP 325 15.6.1 PHP 是什么 325 15.6.2 本書使用的PHP 326 15.6.3 設(shè)置php.ini . 326 15.7 首先顯示“歡迎光臨!” 327 15.7.1 確認Apache 是否啟動 327 專欄 localhost 的IP 地址 328 15.7.2 首先用PHP 顯示“歡迎光臨!” 328 15.7.3 沒有正常顯示時的解決對策 330 15.8 使用PHP. 332 15.8.1 編寫PHP 腳本時需要遵循的規(guī)則 332 專欄 編寫PHP 腳本. 333 15.8.2 執(zhí)行了什么處理. 333 專欄 print 和echo. 335 15.8.3 注釋的寫法 336 15.8.4 phpinfo 函數(shù) 336 專欄 使用PHP 關(guān)閉操作系統(tǒng). 337 15.9 總結(jié) 338 第16 章 PHP 基礎(chǔ)知識340 16.1 變量 340 16.1.1 什么是PHP 的變量 340 16.1.2 變量名的規(guī)則 342 16.1.3 預定義常量 342 16.1.4 變量的數(shù)據(jù)類型. 343 16.2 字符串 344 16.2.1 連接字符串. 344 16.2.2 \" 和' 的使用方法. 344 16.2.3 用\" \" 將變量括起來和用' ' 將變量括起來的區(qū)別 346 16.3 函數(shù) 347 16.3.1 本書涉及的PHP 函數(shù). 347 16.3.2 通過date 函數(shù)顯示日期和時間 347 16.3.3 環(huán)境信息. 349 16.3.4 通過gethostbyaddr 函數(shù)獲取主機名. 351 16.4 比較運算符 353 16.5 循環(huán)處理. 353 16.5.1 通過for 實現(xiàn)循環(huán). 353 16.5.2 通過while 實現(xiàn)循環(huán) 356 16.5.3 通過do…while 實現(xiàn)循環(huán) 357 16.6 條件判斷. 358 16.6.1 通過if 進行條件判斷 358 16.6.2 三元運算符 359 16.6.3 設(shè)置了多個條件的if 的語法 360 專欄 存儲過程中的條件分支. 361 16.6.4 使用了switch 的條件判斷. 362 16.7 數(shù)組 365 16.7.1 什么是數(shù)組 365 16.7.2 給數(shù)組賦值的方法 366 專欄 下標的數(shù)值設(shè)定要恰當 367 16.7.3 關(guān)聯(lián)數(shù)組 368 專欄 關(guān)聯(lián)數(shù)組的下標即使不使用 \" \" 或' ' 括起來也能正常工作嗎 368 16.8 總結(jié). 369 專欄 PHP 的文檔 369 第17 章 PHP 腳本和HTML372 17.1 HTML 源代碼 372 17.2 制作Web 頁面的兩種方法 373 17.2.1 制作靜態(tài)Web 頁面 373 17.2.2 制作動態(tài)Web 頁面 373 17.2.3 瀏覽器不區(qū)分靜態(tài)頁面和動態(tài)頁面 374 17.3 HTML 的規(guī)則 374 17.4 使用PHP 腳本輸出HTML 文件. 377 17.5 需要記住的標簽. 379 17.6 使用CSS 指定顏色和字體大小 382 17.6.1 指定背景的顏色 382 17.6.2 指定字符的大小和顏色. 384 17.7 Here Document 和nl2br 函數(shù). 385 17.7.1 什么是Here Document. 385 17.7.2 什么是nl2br 函數(shù) 386 專欄 標簽. 388 17.8 使用PHP 從瀏覽器發(fā)送和接收數(shù)據(jù) 388 17.8.1 瀏覽器和PHP 文件之間的數(shù)據(jù)交換 388 17.8.2 制作一個用于發(fā)送數(shù)據(jù)的Web 頁面send.html. 389 17.8.3 創(chuàng)建receive.php 以接收和顯示數(shù)據(jù). 394 專欄 超級全局變量 395 17.8.4 發(fā)送和接收數(shù)據(jù) 395 17.9 通過POST 和GET 發(fā)送數(shù)據(jù) 396 17.9.1 發(fā)送和接收數(shù)據(jù). 396 17.9.2 使用GET 方法發(fā)送數(shù)據(jù) 396 17.9.3 GET 和POST 的區(qū)別 397 17.9.4 試著用GET 方法將值添加在URL 上發(fā)送 398 17.9.5 在不進行任何聲明的情況下發(fā)送數(shù)據(jù) 399 專欄 Google 是否也可以把數(shù)據(jù)添加在URL 上 400 17.10 總結(jié) 401 第18 章 使用PHP 腳本操作MySQL404 18.1 使用PHP 腳本連接到MySQL 服務(wù)器 404 18.1.1 從PHP 連接到數(shù)據(jù)庫的方法 404 專欄 mysql 函數(shù) . 405 18.1.2 什么是PDO ?什么是類?什么是方法? 405 18.1.3 使用PDO 連接到MySQL 服務(wù)器 405 18.2 使用PDO 執(zhí)行SQL 語句 407 18.2.1 向表中插入記錄 408 18.2.2 在PHP 中接收SQL 語句的執(zhí)行結(jié)果 . 410 18.3 異常處理中的錯誤處理 413 18.3.1 SQL 的錯誤處理 414 專欄 顯示數(shù)據(jù)庫中存在的表 . 416 18.4 總結(jié) 417 第5 部分.MySQL.+.PHP 實踐419 第19 章。褂肞HP 和MySQL 制作一個簡易公告板.420 19.1 制作一個簡易公告板 . 420 19.1.1 簡易公告板的結(jié)構(gòu) 420 19.1.2 創(chuàng)建數(shù)據(jù)庫和表 . 421 19.1.3 簡易公告板的文件結(jié)構(gòu) 422 19.2 創(chuàng)建首頁 . 423 19.2.1 調(diào)用消息顯示腳本的表單 423 19.2.2 調(diào)用插入腳本的表單 . 423 19.2.3 調(diào)用刪除腳本的表單 424 19.2.4 調(diào)用查詢腳本的表單 . 425 19.2.5 創(chuàng)建首頁 426 19.3 創(chuàng)建分別具有顯示、插入、刪除和查詢功能的PHP 腳本 . 427 19.3.1 4 個腳本的共通之處 427 19.3.2 用于顯示記錄的PHP 腳本 . 427 19.3.3 用于插入記錄的PHP 腳本 428 19.3.4 用于刪除記錄的PHP 腳本 431 19.3.5 用于查詢記錄的PHP 腳本. 432 19.3.6 確認4 個文件的運行結(jié)果 433 專欄 在公告板上輸入標簽的技巧. 434 19.4 總結(jié) 435 第20 章 發(fā)布到互聯(lián)網(wǎng)上時需要注意的地方438 20.1 不在發(fā)布的文件夾中放置重要信息 438 20.1.1 PHP 文件的結(jié)構(gòu). 438 20.1.2 如何讀取其他文件的腳本 439 專欄 讀取外部文件的命令. 441 20.2 避免在查詢中輸入非法數(shù)據(jù). 441 20.2.1 什么是SQL 注入. 441 20.3 正則表達式 443 20.3.1 什么是正則表達式 443 20.3.2 正則表達式的示例. 443 20.3.3 preg_match 函數(shù) 444 20.3.4 使用正則表達式檢查非法輸入. 445 20.4 不執(zhí)行非預期標簽 446 20.4.1 發(fā)送惡意標簽 446 20.4.2 漏洞攻擊. 448 20.4.3 移除輸入的標簽. 448 專欄 如何創(chuàng)建安全的腳本 450 20.5 總結(jié) 450 第21 章 創(chuàng)建一個實用公告板.453 21.1 創(chuàng)建一個實用公告板 453 21.1.1 準備實用公告板中使用的圖片 456 21.2 創(chuàng)建實用公告板中使用的表 456 21.2.1 tbj0(主題表). 457 21.2.2 tbj1(消息表) 457 21.3 制作首頁(創(chuàng)建主題以及顯示列表). 458 21.3.1 bulletin_top.php 的代碼清單 458 21.3.2 bulletin_top.php 的結(jié)構(gòu) 462 21.4 制作各個主題的頁面(輸入回帖和顯示列表) 464 21.4.1 bulletin.php 的代碼清單. 465 21.4.2 bulletin.php 的結(jié)構(gòu) 469 21.5 制作消息的查詢頁面 473 21.5.1 bulletin_search.php 的代碼清單 474 21.5.2 bulletin_search.php 的結(jié)構(gòu) 476 21.6 制作讀取數(shù)據(jù)庫信息的原始文件 . 478 21.7 制作數(shù)據(jù)重置頁面 479 21.7.1 bulletin_reset.php 的代碼清單 . 479 21.7.2 bulletin_reset.php 的結(jié)構(gòu) 479 21.8 總結(jié) 480 第6 部分.附錄483 附錄1 使用phpMyAdmin . 484 附錄2 常見問題的檢查清單 489 附錄3 MySQL 基礎(chǔ)練習 493
你還可能感興趣
我要評論
|