Ⅰ 網頁製作php+mysql如何學習
我看完php的語法,感覺對網頁製作沒什麼幫助--你這句話我能理解,也能看出你是一個辯證性思維比較強的人;我樂意為你解答你的問題。
你應該有過這樣的經歷吧,那就是你需要在某些網站里注冊,那麼為什麼你離開很多天甚至幾年後,你還是其中的會員呢?那就時因為你在注冊的時候你輸入的信息被存入到了資料庫,以PHP+MySQL為例來說,就是PHP有能力把你輸入的數據提交給資料庫,MySQL資料庫就存放了你的信息,等到你下次再登陸的時候呢,PHP就會到MySQL那裡去取出數據來。這些算是PHP對網頁製作的幫助吧?當然這個是比較淺顯的例子,很多論壇,留言板之類的都是通過PHP+MySQL構築的。
你的第二個問題,還需要什麼知識,首先就需要操作資料庫的知識,這里分兩點,第一點,就是對資料庫本身的認識,包括SQL語句,查詢優化,使用索引,安全性能,事務與鎖,許可權設置等等,當然,你開始的時候會DDL DML就可以了,如果這里提到的名詞你不是很清楚,你可以在網路上查查,那樣你會更加明了;第二點,就是使用PHP來訪問資料庫,你看完PHP語法,應該要有訪問資料庫這樣的章節才算完整。如果你學的PHP語法都是比較淺顯的,那麼你還需要更進一步,比如面向對象編程,緩存技術,靜態化技術之類的,你要是感覺作用或區別不大,那是因為你沒有充分考慮到如果是在大型項目中的情況。當然,需要的知識還很多,比如說PHP框架,JQuery之類的JS庫,Samrty之類用用於模板技術的庫等等。
你的第三個問題:之後該怎麼學。首先要對網路的常識要很清楚,比如HTTP協議,什麼是靜態網站,什麼是動態網站等等;再要清楚自己編寫靜態網頁以及美工方面的功底如何,能夠保證很熟練地獨立開發一個靜態網站來;至於這之後該怎麼學,上面說的那些就是你的任務,當然,你還需要進一步了解它們都是怎麼一回事,如果需要這樣做的話。
你的第四個問題:教材其實很多,也差不多,你有語言功底了以後看什麼都容易入門。當然,我看的是澳大利亞的一本PHP & MySQL web 開發第三版,雖然我買了這本書,不過我並不打算建議你去買,你要充分運用好網路資源,包括網路文庫,專業名站,視頻教材等等,另外,如果英語水平了得的話,建議你看英語原版。
希望你以後的學習會給你帶來更多快樂!
Ⅱ 《PHP和MySQL(web開發)》這本書在哪裡可以買到
這本書都已經四度出版了,所以你找不到也不出奇。我買的是最新的【PHP和MySQL】中文版(web開發)第四版。據Luke Welling和Laura Thomson這兩位作者聲稱,第四版經過全面的更新、擴展和重寫。我挑選其中我不熟練的部分內容閱讀,發現這本書已經包括PHP 5.3最新改進的內容,還有MySQL的數據存取引擎,和Ajax技術與Web應用所需要注意的安全問題。我是在(http://www.amazon.cn/gp/proct/B001TDLD80/ref=as_li_tf_tl?ie=UTF8&tag=_23-23&linkCode=as2&camp=536&creative=3200&creativeASIN=B001TDLD80 )找到的。
Ⅲ php開發語言相關書籍
PHP和MySQL Web開發(原書第3版)中文版
好像己經出了第4版了。推薦看一下。
說下我的經驗吧。學習PHP,可以通過找一些項目視頻來看,雖然沒有看書進度快(當然你可以跳著看,有一定基礎的,前面看書會比較快),最主要的是老師的編程習慣和使用編輯器啊,一款強大的編輯器可以使編程起到事半功倍的效果,這些都是他們總結出來的經驗,可以少走好多彎路。
Ⅳ PHP和MySQLWeb開發的目錄
讀者反饋
譯者序
前言
作者簡介
第一篇使用PHP
第1章PHP快速入門教程1
1.1開始之前:了解PHP
1.2創建一個示例應用:Bob汽車零部件商店2
1.2.1創建訂單表單2
1.2.2表單處理4
1.3在HTML中嵌入PHP4
1.3.1使用PHP標記5
1.3.2PHP語句6
1.3.3空格6
1.3.4注釋7
1.4添加動態內容8
1.4.1調用函數8
1.4.2使用date()函數9
1.5訪問表單變數9
1.5.1簡短、中等以及長風格的表單變數9
1.5.2字元串的連接11
1.5.3變數和文本12
1.6理解標識符13
1.7檢查變數類型13
1.7.1PHP的數據類型
1.7.2類型強度
1.7.3類型轉換
1.7.4可變變數
1.8聲明和使用常量13
1.9理解變數的作用域13
1.10使用操作符16
1.10.1算術操作符17
1.10.2字元串操作符17
1.10.3賦值操作符17
1.10.4比較操作符19
1.10.5邏輯操作符20
1.10.6位操作符21
1.10.7其他操作符21
1.11計算表單總金額23
1.12理解操作符的優先順序和結合性:
1.13使用可變函數25
1.13.1測試和設置變數類型26
1.13.2測試變數狀態26
1.13.3變數的重解釋27
1.14根據條件進行決策27
1.14.1if語句28
1.14.2代碼塊28
1.14.3else語句28
1.14.4elseif語句29
1.14.5switch語句30
1.14.6比較不同的條件31
1.15通過迭代實現重復動作32
1.15.1while循環33
1.15.2for和foreach循環34
1.15.3do...while循環35
1.16從控制結構或腳本中跳出35
1.17使用可替換的控制結構語法36
1.18使用declare36
1.19下一章37
第2章數據的存儲與檢索38
2.1保存數據以便後期使用38
2.2存儲和檢索Bob的訂單38
2.3文件處理39
2.4打開文件40
2.4.1選擇文件模式40
2.4.2使用fopen()打開文件40
2.4.3通過FTP或HTTP打開文件42
2.4.4解決打開文件時可能遇到的問題42
2.5寫文件44
2.5.1fwrite()的參數44
2.5.2文件格式45
2.6關閉文件45
2.7讀文件47
2.7.1以只讀模式打開文件:fopen()48
2.7.2知道何時讀完文件:feof()48
2.7.3每次讀取一行數據:fgets()、fgetss()和fgetcsv()49
2.7.4讀取整個文件:readfile()、fpassthru()和file()49
2.7.5讀取一個字元:fgetc()50
2.7.6讀取任意長度:fread()51
2.8使用其他有用的文件函數51
2.8.1查看文件是否存在:file_exists()51
2.8.2確定文件大小:filesize()51
2.8.3刪除一個文件:unlink()51
2.8.4在文件中定位:rewind()、fseek()和ftell()52
2.9文件鎖定52
2.10更好的方式:資料庫管理系統53
2.10.1使用普通文件的幾個問題54
2.10.2RDBMS是如何解決這些問題的54
2.11進一步學習54
2.12下一章55
第3章使用數組56
3.1什麼是數組56
3.2數字索引數組57
3.2.1數字索引數組的初始化57
3.2.2訪問數組的內容57
3.2.3使用循環訪問數組58
3.3使用不同索引的數組59
3.3.1初始化相關數組59
3.3.2訪問數組元素59
3.3.3使用循環語句59
3.4數組操作符60
3.5多維數組61
3.6數組排序64
3.6.1使用sort()函數64
3.6.2使用asort()函數和ksort()函數對相關數組排序64
3.6.3反向排序65
3.7多維數組的排序65
3.7.1用戶定義排序65
3.7.2反向用戶排序66
3.8對數組進行重新排序67
3.8.1使用shuffle()函數67
3.8.2使用array_reverse()函數68
3.9從文件載入數組69
3.10執行其他的數組操作71
3.10.1在數組中瀏覽:each()、current()、reset()、end()、next()、pos()和prev()71
3.10.2對數組的每一個元素應用任何函數:array_walk()72
3.10.3統計數組元素個數:count()、sizeof()和array_count_values()73
3.10.4將數組轉換成標量變數:extract()73
3.11進一步學習75
3.12下一章75
第4章字元串操作與正則表達式76
4.1創建一個示例應用程序:智能表單郵件76
4.2字元串的格式化78
4.2.1字元串的整理:chop()、ltrim()和trim()78
4.2.2格式化字元串以便顯示78
4.2.3格式化字元串以便存儲:addslashes()和stripslashes()81
4.3用字元串函數連接和分割字元串82
4.3.1使用函數explode()、implode()和join()82
4.3.2使用strtok()函數83
4.3.3使用substr()函數83
4.4字元串的比較84
4.4.1字元串的排序:strcmp()、strcasecmp()和strnatcmp()84
4.4.2使用strlen()函數測試字元串的長度85
4.5使用字元串函數匹配和替換子字元串85
4.5.1在字元串中查找字元串:strstr()、strchr()、strrchr()和stristr()85
4.5.2查找子字元串的位置:strpos()、strrpos()86
4.5.3替換子字元串:str_replace()、substr_replace()87
4.6正則表達式的介紹88
4.6.1基礎知識88
4.6.2字元集和類88
4.6.3重復89
4.6.4子表達式89
4.6.5子表達式計數90
4.6.6定位到字元串的開始或末尾90
4.6.7分支90
4.6.8匹配特殊字元90
4.6.9特殊字元一覽91
4.6.10在智能表單中應用91
4.7用正則表達式查找子字元串92
4.8使用正則表達式分割字元串93
4.9比較字元串函數和正則表達式函數93
4.10進一步學習93
4.11下一章93
第5章代碼重用與函數編寫94
5.1代碼重用的好處
5.1.1成本94
5.1.2可靠性94
5.1.3一致性95
5.2使用require()和include()函數95
5.2.1文件擴展名和require()語句96
5.2.2使用require()製作Web站點的模版96
5.2.3使用auto_prepend_file和auto_append_file101
5.3在PHP中使用函數101
5.3.1調用函數101
5.3.2調用未定義的函數103
5.3.3理解字母大小寫和函數名稱103
5.4理解為什麼要定義自己的函數103
5.5了解基本的函數結構104
5.5.1函數命名
5.6使用參數105
5.7理解作用域107
5.8參數的引用傳遞和值傳遞109
5.9使用Return關鍵字110
5.9.1從函數返回一個值111
5.10實現遞歸113
5.10.1名稱空間
5.11進一步學習114
5.12下一章114
第6章面向對象的PHP115
6.1理解面向對象的概念115
6.1.1類和對象115
6.1.2多態性116
6.1.3繼承117
6.2在PHP中創建類、屬性和操作117
6.2.1類的結構117
6.2.2構造函數118
6.2.3析構函數118
6.3類的實例化118
6.4使用類的屬性119
6.5使用private和public關鍵字控制訪問121
6.6類操作的調用121
6.7在PHP中實現繼承122
6.7.1通過繼承使用private和protected訪問修飾符控制可見性123
6.7.2重載124
6.7.3使用final關鍵字禁止繼承和重載125
6.7.4理解多重繼承126
6.7.5實現介面126
6.8類的設計127
6.9編寫類代碼128
6.10理解PHP面向對象新的高級功能135
6.10.1使用Per-Class常量135
6.10.2實現靜態方法135
6.10.3檢查類的類型和類型提示136
6.10.4克隆對象136
6.10.5使用抽象類137
6.10.6使用__call()重載方法137
6.10.7使用__autoload()方法138
6.10.8實現迭代器和迭代138
6.10.9將類轉換成字元串140
6.10.10使用Reflection(反射)API140
6.11下一章141
第7章錯誤和異常處理142
7.1異常處理的概念142
7.2Exception類144
7.3用戶自定義異常144
7.4Bob的汽車零部件商店應用程序的異常146
7.5異常和PHP的其他錯誤處理機制150
7.6進一步學習150
7.7下一章150
第二篇使用MySQL
第8章設計Web資料庫151
8.1關系資料庫的概念152
8.1.1表格152
8.1.2列152
8.1.3行152
8.1.4值152
8.1.5鍵152
8.1.6模式153
8.1.7關系153
8.2如何設計Web資料庫154
8.2.1考慮要建模的實際對象154
8.2.2避免保存冗餘數據154
8.2.3使用原子列值155
8.2.4選擇有意義的鍵156
8.2.5考慮需要詢問資料庫的問題156
8.2.6避免多個空屬性的設計156
8.2.7表格類型的總結157
8.3Web資料庫架構157
8.4進一步學習158
8.5下一章158
第9章創建Web資料庫159
9.1使用MySQL監視程序160
9.2登錄到MySQL160
9.3創建資料庫和用戶161
9.4設置用戶與許可權162
9.5MySQL許可權系統的介紹162
9.5.1最少許可權原則162
9.5.2創建用戶:GRANT命令162
9.5.3許可權的類型和級別163
9.5.4REVOKE命令165
9.5.5使用GRANT和REVOKE的例子165
9.6創建一個Web用戶166
9.7使用正確的資料庫166
9.8創建資料庫表167
9.8.1理解其他關鍵字的意思168
9.8.2理解列的類型169
9.8.3用SHOW和DESCRIBE來查看資料庫170
9.8.4創建索引171
9.9理解MySQL的標識符171
9.10選擇列數據類型172
9.10.1數字類型173
9.10.2日期和時間類型174
9.10.3字元串類型174
9.11進一步學習176
9.12下一章176
第10章使用MySQL資料庫177
10.1SQL是什麼177
10.2在資料庫中插入數據177
10.3從資料庫中獲取數據179
10.3.1獲取滿足特定條件的數據181
10.3.2從多個表中獲取數據182
10.3.3以特定的順序獲取數據186
10.3.4分組與合計數據186
10.3.5選擇要返回的行188
10.3.6使用子查詢188
10.4更新資料庫記錄190
10.5創建後修改表191
10.6刪除資料庫中的記錄193
10.7表的刪除193
10.8刪除整個資料庫193
10.9進一步學習194
10.10下一章194
第11章使用PHP從Web訪問MySQL資料庫195
11.1Web資料庫架構的工作原理195
11.2從Web查詢資料庫的基本步驟198
11.2.1檢查與過濾用戶輸入數據198
11.2.2建立一個連接199
11.2.3選擇使用的資料庫200
11.2.4查詢資料庫200
11.2.5檢索查詢結果201
11.2.6從資料庫斷開連接202
11.3將新信息放入資料庫202
11.4使用Prepared語句205
11.5使用PHP與資料庫交互的其他介面206
11.5.1使用常規的資料庫介面:PEARMDB2206
11.6進一步學習209
11.7下一章209
第12章MySQL高級管理210
12.1深入理解許可權系統210
12.1.1user表211
12.1.2db表和host表212
12.1.3tables_priv表,columns_priv表和procs_priv表212
12.1.4訪問控制:MySQL如何使用Grant表213
12.1.5更新許可權:修改什麼時候生效213
12.2提高MySQL資料庫的安全性214
12.2.1從操作系統角度來保護MySQL214
12.2.2密碼214
12.2.3用戶許可權215
12.2.4Web問題215
12.3獲取更多關於資料庫的信息216
12.3.1使用SHOW獲取信息216
12.3.2使用DESCRIBE獲取關於列的信息218
12.3.3用EXPLAIN理解查詢操作的工作過程218
12.4資料庫的優化221
12.4.1設計優化222
12.4.2許可權222
12.4.3表的優化222
12.4.4使用索引222
12.4.5使用默認值222
12.4.6其他技巧222
12.5備份MySQL資料庫222
12.6恢復MySQL資料庫223
12.7實現復制223
12.7.1設置主伺服器224
12.7.2執行初始的數據傳輸224
12.7.3設置一個/多個從伺服器225
12.8進一步學習225
12.9下一章225
第13章MySQL高級編程226
13.1LOADDATAINFILE語句226
13.2存儲引擎226
13.3事務227
13.3.1理解事務的定義227
13.3.2通過InnoDB使用事務228
13.4外鍵229
13.5存儲過程230
13.5.1基本示例230
13.5.2局部變數232
13.5.3游標和控制結構233
13.6進一步學習236
13.7下一章236
第三篇電子商務與安全性
第14章運營一個電子商務網站237
14.1我們要實現什麼目標237
14.2考慮電子商務網站的類型237
14.2.1使用在線說明書公布信息238
14.2.2接收產品或服務的訂單240
14.2.3提供服務和數字產品243
14.2.4為產品或服務增值243
14.2.5減少成本243
14.3理解風險和威脅244
14.3.1網路黑客244
14.3.2不能招攬足夠的生意245
14.3.3計算機硬體故障245
14.3.4電力、通信、網路或運輸故障245
14.3.5廣泛的競爭245
14.3.6軟體錯誤245
14.3.7不斷變化的政府政策和稅收246
14.3.8系統容量限制246
14.4選擇一個策略246
14.5下一章246
第15章電子商務的安全問題247
15.1信息的重要程度247
15.2安全威脅248
15.2.1機密數據的泄露248
15.2.2數據丟失和數據破壞249
15.2.3數據修改250
15.2.4拒絕服務251
15.2.5軟體錯誤251
15.2.6否認252
15.3易用性,性能、成本和安全性253
15.4建立一個安全政策253
15.5身份驗證原則254
15.6加密技術基礎255
15.6.1私有密鑰加密256
15.6.2公有密鑰加密256
15.6.3數字簽名256
15.7數字證書257
15.8安全的Web伺服器258
15.9審計與日誌記錄259
15.10防火牆259
15.11備份數據259
15.11.1備份常規文件260
15.11.2備份與恢復MySQL資料庫260
15.12自然環境安全260
15.13下一章261
第16章Web應用的安全
16.1處理安全性問題的策略
16.1.1以正確心態為開始
16.1.2安全性和可用性之間的平衡
16.1.3安全監視
16.1.4基該方法
16.2識別所面臨的威脅
16.2.1訪問或修改敏感數據
16.2.2數據丟失或破壞
16.2.3拒絕服務
16.2.4惡意代碼注入
16.2.5伺服器被攻破
16.3了解與我們「打交道」的用戶
16.3.1破解人員
16.3.2受影響機器的未知情用戶
16.3.3對公司不滿的員工
16.3.4硬體被盜
16.3.5我們自身
16.4代碼的安全性
16.4.1過濾用戶輸入
16.4.2轉義輸出
16.4.3代碼組織
16.4.4代碼自身的問題
16.4.5文件系統因素
16.4.6代碼穩定性和缺陷
16.4.7執行引號和exec
16.5Web伺服器和PHP的安全性
16.5.1保持軟體的更新
16.5.2查看php.ini文件
16.5.3Web伺服器配置
16.5.4Web應用的商業主機服務
16.6資料庫伺服器的安全性
16.6.1用戶和許可權系統
16.6.2發送數據至伺服器
16.6.3連接伺服器
16.6.4運行伺服器
16.7保護網路
16.7.1安裝防火牆
16.7.2使用隔離區域(DMZ)
16.7.3應對DoS和DDoS攻擊
16.8計算機和操作系統的安全性
16.8.1保持操作系統的更新
16.8.2隻運行必須的軟體
16.8.3伺服器的物理安全性
16.9災難計劃
16.10下一章
第17章使用PHP和MySQL實現身份驗證262
17.1識別訪問者262
17.2實現訪問控制263
17.2.1保存密碼265
17.2.2密碼的加密267
17.2.3保護多個網頁268
17.3使用基本身份驗證269
17.4在PHP中使用基本身份驗證270
17.5在Apache的.htaccess文件中使用基本身份驗證271
17.6使用mod_auth_mysql身份驗證276
17.6.1安裝mod_auth_mysql276
17.6.2使用mod_auth_mysql277
17.7創建自定義身份驗證277
17.8進一步學習278
17.9下一章278
第18章使用PHP和MySQL實現安全事務279
18.1提供安全的事務處理279
18.1.1用戶機器280
18.1.2Internet281
18.1.3我們的系統281
18.2使用加密套接字層(SSL)282
18.3屏蔽用戶的輸入284
18.4提供安全存儲284
18.5存儲信用卡號碼285
18.6在PHP中使用加密技術286
18.6.1安裝GPG286
18.6.2測試GPG288
18.7進一步學習293
18.8下一章293
第四篇PHP的高級技術
第19章與文件系統和伺服器的交互295
19.1文件上載295
19.1.1文件上載的HTML代碼296
19.1.2編寫處理文件的PHP297
19.1.3避免常見上載問題300
19.2使用目錄函數300
19.2.1從目錄讀取300
19.2.2獲得當前目錄的信息302
19.2.3創建和刪除目錄302
19.3與文件系統的交互302
19.3.1獲取文件信息302
19.3.2更改文件屬性304
19.3.3創建、刪除和移動文件305
19.4使用程序執行函數305
19.5與環境變數交互:getenv()和putenv()308
19.6進一步學習308
19.7下一章308
第20章使用網路函數和協議函數309
20.1了解可供使用的協議309
20.2發送和讀取電子郵件309
20.3使用其他Web站點的數據310
20.4使用網路查找函數312
20.5備份或鏡像一個文件
20.5.1使用FTP備份或鏡像一個文件316
20.5.2上傳文件321
20.5.3避免超時321
20.5.4使用其他的FTP函數322
20.6進一步學習322
20.7下一章323
第21章日期和時間的管理324
21.1在PHP中獲取日期和時間324
21.1.1使用date()函數324
21.1.2使用UNⅨ時間戳325
21.1.3使用getdate()函數326
21.1.4使用checkdate()函數檢驗日期有效性327
21.1.5格式化時間戳
21.2在PHP日期格式和MySQL日期格式之間進行轉換327
21.3在PHP中計算日期329
21.4在MySQL中計算日期329
21.5使用微秒331
21.6使用日歷函數331
21.7進一步學習332
21.8下一章332
第22章創建圖像333
22.1在PHP中設置圖像支持333
22.2理解圖像格式334
22.2.1JPEG334
22.2.2PNG334
22.2.3WBMP335
22.2.4GIF335
22.3創建圖像335
22.3.1創建一個背景圖像336
22.3.2在圖像上繪圖或列印文本337
22.3.3輸出最終圖形338
22.3.4清理339
22.4在其他頁面中使用自動生成的圖像339
22.5使用文本和字體創建圖像339
22.5.1創建基本畫布342
22.5.2將文本調整到適合按鈕342
22.5.3放置文本345
22.5.4將文本寫到按鈕上345
22.5.5完成345
22.6繪制圖像與用圖表描繪數據346
22.7使用其他的圖像函數352
22.8進一步學習352
22.9下一章353
第23章在PHP中使用會話控制354
23.1什麼是會話控制354
23.2理解基本的會話功能354
23.2.1什麼是cookie354
23.2.2通過PHP設置cookie355
23.2.3在會話中使用cookie355
23.2.4存儲會話ID356
23.3實現簡單的會話356
23.3.1開始一個會話356
23.3.2注冊一個會話變數356
23.3.3使用會話變數357
23.3.4注銷變數與銷毀會話357
23.4創建一個簡單的會話例子357
23.5配置會話控制359
23.6通過會話控制實現身份驗證360
23.7進一步學習365
23.8下一章365
第24章其他有用的特性366
24.1使用eval()函數對字元串求值367
24.2終止執行:die和exit367
24.3序列化變數和對象368
24.4獲取PHP環境信息369
24.4.1找到所載入的PHP擴展部件369
24.4.2識別腳本所有者370
24.4.3確定腳本最近修改時間370
24.5暫時改變運行時環境370
24.6源代碼加亮371
24.7在命令行中使用PHP372
24.8下一章372
第五篇創建實用的PHP和MySQL項目
第25章在大型項目中使用PHP和MySQL373
25.1在Web開發中應用軟體工程374
25.2規劃和運行Web應用程序項目374
25.3重用代碼375
25.4編寫可維護代碼375
25.4.1編碼標准375
25.4.2分解代碼378
25.4.3使用標準的目錄結構378
25.4.4文檔化和共享內部函數378
25.5實現版本控制379
25.6選擇一個開發環境380
25.7項目的文檔化380
25.8建立原型381
25.9將邏輯和內容分離381
25.10優化代碼382
25.10.1使用簡單優化382
25.10.2使用Zend產品382
25.11測試383
25.12進一步學習383
25.13下一章384
第26章調試385
26.1編程錯誤385
26.1.1語法錯誤385
26.1.2運行時錯誤386
26.1.3邏輯錯誤391
26.2使用變數幫助調試392
26.3錯誤報告級別393
26.4改變錯誤報告設置394
26.5觸發自定義錯誤395
26.6巧妙地處理錯誤396
26.7下一章398
第27章建立用戶身份驗證機制和個性化設置399
27.1解決方案的組成399
27.1.1用戶識別和個性化設置399
27.1.2保存書簽400
27.1.3推薦書簽400
27.2解決方案概述400
27.3實現資料庫402
27.4實現基本的網站403
27.5實現用戶身份驗證405
27.5.1注冊405
27.5.2登錄410
27.5.3登出413
27.5.4修改密碼414
27.5.5重設遺忘的密碼416
27.6實現書簽的存儲和檢索420
27.6.1添加書簽420
27.6.2顯示書簽422
27.6.3刪除書簽422
27.7實現書簽推薦424
27.8考慮可能的擴展427
27.9下一章427
第28章創建一個購物車428
28.1解決方案的組成428
28.1.1創建一個在線目錄428
28.1.2在用戶購買商品的時候記錄購買行為429
28.1.3實現一個付款系統429
28.1.4創建一個管理界面429
28.2解決方案概述429
28.3實現資料庫432
28.4實現在線目錄434
28.4.1列出目錄434
28.4.2列出一個目錄中的所有圖書437
28.4.3顯示圖書詳細信息438
28.5實現購物車440
28.5.1使用show_cart.php腳本440
28.5.2瀏覽購物車442
28.5.3將物品添加到購物庫444
28.5.4保存更新後的購物車446
28.5.5列印標題欄摘要447
28.5.6結賬447
28.6實現付款452
28.7實現一個管理界面454
28.8擴展該項目460
28.9使用一個已有系統461
28.10下一章461
第29章創建一個基於Web的電子郵件服務系統486
29.1解決方案的組成486
29.1.1電子郵件協議:POP3和IMAP
29.1.2PHP對POP3和IMAP的支持
29.2解決方案概述488
29.3建立資料庫489
29.4了解腳本架構490
29.5登錄與登出495
29.6建立賬戶498
29.6.1創建一個新賬戶499
29.6.2修改已有賬戶501
29.6.3刪除賬戶501
29.7閱讀郵件502
29.7.1選擇賬戶502
29.7.2查看郵箱內容504
29.7.3閱讀郵件消息507
29.7.4查看消息標題509
29.7.5刪除郵件509
29.8發送郵件510
29.8.1發送一則新消息510
29.8.2回復或轉發郵件512
29.9擴展這個項目514
29.10下一章514
第30章創建一個郵件列表管理器515
30.1解決方案的組成515
30.1.1建立列表和訂閱者資料庫516
30.1.2上載新聞信件516
30.1.3發送帶附件的郵件516
30.2解決方案概述516
30.3建立資料庫518
30.4定義腳本架構520
30.5實現登錄526
30.5.1新賬戶的創建527
30.5.2登錄529
30.6用戶函數的實現531
30.6.1查看列表531
30.6.2查看郵件列表信息535
30.6.3查看郵件列表存檔536
30.6.4訂閱與取消訂閱538
30.6.5更改賬戶設置539
30.6.6更改密碼539
30.6.7登出540
30.7管理功能的實現541
30.7.1創建新的郵件列表541
30.7.2上載新的新聞信件543
30.7.3多文件上載的處理545
30.7.4預覽新聞信件549
30.7.5發送郵件550
30.8擴展這個項目555
30.9下一章555
第31章創建一個Web論壇556
31.1理解流程
31.2解決方案的組成556
31.3解決方案概述557
31.4資料庫的設計558
31.5查看文章的樹型結構560
31.5.1展開和折疊561
31.5.2顯示文章564
31.5.3使用treenode類564
31.6查看單個的文章570
31.7添加新文章572
31.8添加擴充578
31.9使用一個已有的系統578
31.10下一章578
第32章生成PDF格式的個性化文檔579
32.1項目概述
32.1.1評估文檔格式579
32.2解決方案的組成582
32.2.1問題與回答系統583
32.2.2文檔生成軟體583
32.3解決方案概述585
32.3.1提問585
32.3.2給答題評分587
32.3.3生成RTF證書589
32.3.4從模板生成PDF證書591
32.3.5使用PDFlib生成PDF文檔595
32.3.6使用PDFlib的一個「HelloWorld」程序595
32.3.7用PDFlib生成證書598
32.4處理標題的問題605
32.5擴展該項目605
32.6下一章606
第33章使用XML和SOAP來連接Web服務607
33.1項目概述:使用XML和Web服務
33.1.1理解XML
33.1.2理解Web服務611
33.2解決方案的組成612
33.2.1使用Amazon的Web服務介面613
33.2.2XML的解析:REST響應
33.2.3在PHP中使用SOAP614
33.2.4緩存614
33.3解決方案概述614
33.3.1核心應用程序618
33.3.2顯示特定種類的圖書623
33.3.3獲得一個AmazonResultSet類624
33.3.4使用REST發送和接收請求
33.3.5使用SOAP發送和接收請求
33.3.6緩存請求返回的數據636
33.3.7創建購物車639
33.3.8到Amazon付賬642
33.4安裝項目代碼642
33.5擴展這個項目643
33.6進一步學習643
第34章使用Ajax構建Web2.0應用
34.1Ajax是什麼?
34.1.1HTTP請求和響應
34.1.2DHTML和XHTML
34.1.3級聯樣式單(CSS)
34.1.4客戶端編程
34.1.5伺服器端編程
34.1.6XML和XSLT
34.2Ajax基礎
34.2.1XMLHTTPRequest對象
34.2.2與伺服器通信
34.2.3處理伺服器響應
34.2.4整合應用
34.3在以前的項目添加Ajax元素
34.3.1在PHPBookmark應用中添加Ajax元素
34.4進一步學習
34.4.1進一步了解文檔對象模型(DOM)
34.4.2Ajax應用可用的JavaScript函數庫
34.4.3Ajax開發人員網站
第六篇附錄
附錄A安裝PHP及MySQL645
附錄BWeb資源664
第1章PHP快速入門教程
第2章數據的存儲與檢索
第3章使用數組
第4章字元串操作與正則表達式
第5章代碼重用與函數編寫
第6章面向對象的PHP
第7章錯誤和異常處理
……
Ⅳ php書籍推薦
關注PHP的人越來越多了,可惜國內PHP5方面的好書還非常少,幾乎可以說沒有。
PHP4即將是明日黃花,所以學PHP最好直接學PHP5。下面是我認為比較好的PHP5書籍:
1. Core PHP Programming, 3rd Edition
這本書是PHP專家Leon Atkinson和PHP創始人之一Zeev Suraski合著的。國內有
第2版,講PHP4的,但這本第3版還買不到。學校圖書館有一本原版,可惜只有一本
(現在在我手裡,咔咔)。講得非常全面,做為Web編程方面的知識,幾乎全部包括
了。最有價值的是Part 4,講Software Enginerring的,介紹了設計、效率與調試,
還介紹了四種最常用的設計模式,非常有參考價值。可惜畢竟是03年的書,那時候
PHP5還在開發中,所以裡面有一些內容並不完全適合現在的PHP5,比如名字空間(
PHP5並不支持名字空間)。不過瑕不掩瑜,做為PHP5的一本綜合書籍,這本書非常
經典,可以用於入門,也可以用於提高。
2. PHP5 Power Programming
這本書是PHP的另一創始人Andi Gutmans寫的,專門針對PHP5。個人感覺這本書
不適合學習,但很適合提高時參考。裡面花了大量篇幅講述PHP5的面向對象機制,
不過基本上跟Core PHP Programming重復,所以看過Core後再看這些將很快,可以
當成溫故一遍。還有一章介紹了PHP5里的高級面向對象特性,如迭代器,反射API(
Reflection API,在其它面向對象語言里稱自省),也介紹了設計模式。
可惜的是,跟上面一本書一樣,都是只講PHP特性的書,具體到PHP高級應用的
實戰講得感覺比較欠缺,像MVC模式,兩本書都沒講到,而這些對PHP高級編程來說是
非常重要的。比較令人安慰的是這本書還介紹了很多PHP高級特性,像PEAR包,APC,
APD,Xdebug,還有Zend Studio的使用,等等,這些還是非常有價值的。
總之,這是一本很適合提高時使用的書籍,跟Core一樣,也是PHP書籍中的經典。
3. PHP and MySQL Web Development, 3rd Edition
這是國內唯一能買到的PHP5書籍,中文翻譯,但翻譯質量不怎麼樣,有些句子
讀起來莫名其妙。這本書比較適合初中級的PHP學習,而且非常實際,有很多基本應
用的實例,很適合入門。除了資料庫知識很不錯外,裡面也講到了使用PHP和MySQL
開發中等項目時所需要考慮到的問題,介紹了很多基本的軟體項目管理方法,非常
實用。後面幾章是一些實例,介紹了購物車(我最不喜歡這東西),郵件列表,內容
管理系統和論壇的編寫,不過都只是基礎,沒有高級技巧,所以看起來會覺得很不舒
服,呵呵。
裡面有一張泛泛地講到了電子商務安全,可以參考下。個人感覺相當不錯的內容
是MySQL部分,基本涵蓋了資料庫基礎和MySQL基礎及高級特性,但限於篇幅,沒有去
講得很深入,權當是入門指引了。
因為是國內能買到的,所以很多人可能會喜歡從這本書開始學PHP5,我覺得也不
錯。總之很推薦這本書。
4. Essential PHP Security
這是一本講述PHP編碼安全的書,非常需要引起PHP開發人員的重視。我覺得這是
一本必讀書籍,讀過後會讓你冒冷汗。現在注重安全編碼的人實在太少了,對於一個
專業的PHP程序員,PHP安全特性絕對要爛熟於胸,而這本書就提供了一個非常好的視
角。
5. PHP Architect's Guide to PHP Design Patterns
這本書我正在看,對於PHP5面向對象的學習絕對非常有幫助。裡面介紹了非常多
的設計模式,直接以PHP語言實現出來,可以讓你一步到位使用模式思想。第17章介
紹了PHP里的MVC模式,可以說是帶了個好頭,很有參考價值。
由於還沒看完,所以不敢多評價,但可以肯定的是,這本書對於學PHP5面向對象
高級編程的人來說是絕對必備的。
國內有中文版,phpchina社區翻譯的,可以下載過來參考下。另外,好像關於
PHP設計模式的書又出了一本,叫做《PHP5: Objects, Patterns and Practice》,
可惜我Google了半天也找不到下載地址,只能作罷了,希望以後能找到。可以肯定這
又將是一本讓人振奮的書。
又將是一本讓人振奮的書。
最後想說明的是,Oreilly的PHP書就不用看了,包括PHP創始人Rasmus Lerdorf寫的
《Programming PHP》(現在好像出第2版了),講得東西基本上全是PHP手冊里的東
西,沒必要重復浪費時間。像《Learning PHP5》,《PHP Cookbook》之類,說實話
我個人感覺真的只是PHP手冊的子集。最近好像又出了本同樣可以看成是子集的書,
書名是《Learning PHP and MySQL》,看了一眼就沒看了。不是對Oreilly有偏見,
只是因為它的書全是入門級的,沒什麼含金量,屬於看過就扔的那種。想想K&R的
《The C Programming Language》吧,呵呵。
最最後想說明的是,PHP手冊,一定要反復看!這個是學PHP最重要的參考資料,每個
人都應該有一本以備不時之需。有中文翻譯版的,不過裡面的鏈接有錯誤,看起來不
是很方便,但多摸索幾次就能把鏈接弄對了。
大概就講這些了,只是我個人觀點,希望大家指點批評,共同進步。
Ⅵ PHP和MySQL Web開發VS PHP和MySQL Web開發從新手到高手哪個好
有的,《PHP和MySQL Web開發從新手到高手(第5版)》是學習PHP和MySQL應用開發的經典教程,歷經多個版本升級,深得廣大讀者青睞。
全書共包括12章和4個附錄。
第1章介紹了PHP和MySQL在各個常用平台上的安裝;
第2章和第3章,分別簡單介紹了MySQL和PHP;
第4章將兩種工具結合起來,創建了一些Web頁面;
第5章介紹了關系資料庫理論;
第6章介紹了PHP編程基礎知識;
第7章通過一個內容管理系統的範例,進一步擴展了第6章的主題
第8章討論正則表達式的應用;
第9章探討了cookie和會話,以及訪問控制;
第10章介紹了MySQL的管理技術;
第11章探討了高級SQL查詢技巧;
第12章介紹了二進制數據的應用和處理。
附錄部分給出了一些有用的資料,可供讀者參考查詢,分別是PHP和MySQL的手動安裝說明,MySQL的語法參考,MySQL函數參考和MySQL的列類型。
Ⅶ 學習php,最好的學習順序是什麼
PHP需要掌握的知識還是比較多的,最基本的比如:PHP基本的語法、php框架以及CMS、mysql資料庫設計表、mysql資料庫的基本SQL語句。現在一般PHP的都得會前端,那就包括:js/ajax、html、css。如果更高點層次的就是linux伺服器。
PHP攻城獅踐行學習路線圖:
1、用集成環境安裝PHP環境,一定要記住這一點,不要自己分開去裝,尤其是自學的朋友。不然你會覺得很復雜,會沒有信心學下去的。也要注意任何高手都不是一蹴而就的,是一步一步,不同的階段歷練才有最後的沉澱。
2、先了解一些基本的變數類型,語法,函數,基本邏輯,寫簡單的代碼。前期以嘗試,培養興趣為主。這段時間是打基礎很好的時候,這個會影響你後面的發展,不過也可以在後期去完善。
3、這時候你可能覺得PHP就這樣,沒什麼難度,或者有的覺得太難了,簡直一臉疑惑。這個到底有什麼用。在這時候一定要堅持下來,可以試試先放一下,別太較真。慢慢的困惑你的會被你領悟的。這時,建議學習html+css+js,緩解自己的壓力,這個相對簡單,簡歷信心。尤其是js,總結其實有相同的思路,可以結合著一起體會。
4、這些都感覺有80%了解就可以先放放了,現在在學習MySQL,也是先了解基礎的。這個是干什麼的,我可以用它做什麼。因為之前裝的集成環境。為什麼感覺是凌亂的,我想告訴你的是,一是不要在自己沒能力解決問題的時候死磕,浪費時間,喪失信心。這時候我們要做的是學習壯大自己,不要灰心。二是我本來覺得這一切都了解才是完整的。我們的目標也是要把這些都做好,這才是一個合格的PHP程序員。
5、這一切都順利的話,你基本離預設的目標不遠了,完成了整個學習的70%了。後面的是在之前的基礎上升華。把HTML和css、js結合、靜態文件和PHP結合、PHP和MySQL結合。這個階段可能越到的問題會異常的多,一定要學會解決問題。網上很多都是答案,同樣你要學會問問題。
6、這些之後你基本已經快到學習的尾聲了,但還缺少經驗。這時,你可以看一些網上開源的cms,例如織夢,國內用的多,越到問題好解決。看看一些視頻(網上免費的很多),查漏補缺,總結歸納形成自己的知識體系。是時候該准備慶祝下自己這段的時間沒有白費(一般2到3各月,看平時每天花的時間),基本成為一個合格的PHP程序員了。也該恭喜你了,其實並不那麼難。堅持,堅持;努力,努力;學習,學習。
Ⅷ php和mysql+web開發+原書第3版怎麼樣
PHP和MySQL
Web開發的"聖經"
本書既是一本入門書,也是一本參考手冊,裡面的例子實用性很強,是由真正的程序員寫的書。書中的例子非常好,建議看這本書!肯定不會後悔!
本書將PHP開發與MySQL應用相結合,分別對PHP和MySQL做了深入淺出的分析,不僅介紹PHP和MySQL的一般概念,而且對PHP和MySQL的Web應用做了較全面的闡述,並包括幾個經典且實用的例子。
本書是第3版,經過了全面的更新、重寫以及擴展,包括PHP5的最新特性——新的對象模型、更好的異常處理和SimpleXML;以及MySQL
5的新特性,例如存儲過程和存儲引擎.
Ⅸ php和mysql web開發的目錄
讀者反饋
譯者序
前言
作者簡介
第一篇使用PHP
第1章PHP快速入門教程1
1.1開始之前:了解PHP
1.2創建一個示例應用:Bob汽車零部件商店2
1.2.1創建訂單表單2
1.2.2表單處理4
1.3在HTML中嵌入PHP4
1.3.1使用PHP標記5
1.3.2PHP語句6
1.3.3空格6
1.3.4注釋7
1.4添加動態內容8
1.4.1調用函數8
1.4.2使用date()函數9
1.5訪問表單變數9
1.5.1簡短、中等以及長風格的表單變數9
1.5.2字元串的連接11
1.5.3變數和文本12
1.6理解標識符13
1.7檢查變數類型13
1.7.1PHP的數據類型
1.7.2類型強度
1.7.3類型轉換
1.7.4可變變數
1.8聲明和使用常量13
1.9理解變數的作用域13
1.10使用操作符16
1.10.1算術操作符17
1.10.2字元串操作符17
1.10.3賦值操作符17
1.10.4比較操作符19
1.10.5邏輯操作符20
1.10.6位操作符21
1.10.7其他操作符21
1.11計算表單總金額23
1.12理解操作符的優先順序和結合性:
1.13使用可變函數25
1.13.1測試和設置變數類型26
1.13.2測試變數狀態26
1.13.3變數的重解釋27
1.14根據條件進行決策27
1.14.1if語句28
1.14.2代碼塊28
1.14.3else語句28
1.14.4elseif語句29
1.14.5switch語句30
1.14.6比較不同的條件31
1.15通過迭代實現重復動作32
1.15.1while循環33
1.15.2for和foreach循環34
1.15.3do...while循環35
1.16從控制結構或腳本中跳出35
1.17使用可替換的控制結構語法36
1.18使用declare36
1.19下一章37
第2章數據的存儲與檢索38
2.1保存數據以便後期使用38
2.2存儲和檢索Bob的訂單38
2.3文件處理39
2.4打開文件40
2.4.1選擇文件模式40
2.4.2使用fopen()打開文件40
2.4.3通過FTP或HTTP打開文件42
2.4.4解決打開文件時可能遇到的問題42
2.5寫文件44
2.5.1fwrite()的參數44
2.5.2文件格式45
2.6關閉文件45
2.7讀文件47
2.7.1以只讀模式打開文件:fopen()48
2.7.2知道何時讀完文件:feof()48
2.7.3每次讀取一行數據:fgets()、fgetss()和fgetcsv()49
2.7.4讀取整個文件:readfile()、fpassthru()和file()49
2.7.5讀取一個字元:fgetc()50
2.7.6讀取任意長度:fread()51
2.8使用其他有用的文件函數51
2.8.1查看文件是否存在:file_exists()51
2.8.2確定文件大小:filesize()51
2.8.3刪除一個文件:unlink()51
2.8.4在文件中定位:rewind()、fseek()和ftell()52
2.9文件鎖定52
2.10更好的方式:資料庫管理系統53
2.10.1使用普通文件的幾個問題54
2.10.2RDBMS是如何解決這些問題的54
2.11進一步學習54
2.12下一章55
第3章使用數組56
3.1什麼是數組56
3.2數字索引數組57
3.2.1數字索引數組的初始化57
3.2.2訪問數組的內容57
3.2.3使用循環訪問數組58
3.3使用不同索引的數組59
3.3.1初始化相關數組59
3.3.2訪問數組元素59
3.3.3使用循環語句59
3.4數組操作符60
3.5多維數組61
3.6數組排序64
3.6.1使用sort()函數64
3.6.2使用asort()函數和ksort()函數對相關數組排序64
3.6.3反向排序65
3.7多維數組的排序65
3.7.1用戶定義排序65
3.7.2反向用戶排序66
3.8對數組進行重新排序67
3.8.1使用shuffle()函數67
3.8.2使用array_reverse()函數68
3.9從文件載入數組69
3.10執行其他的數組操作71
3.10.1在數組中瀏覽:each()、current()、reset()、end()、next()、pos()和prev()71
3.10.2對數組的每一個元素應用任何函數:array_walk()72
3.10.3統計數組元素個數:count()、sizeof()和array_count_values()73
3.10.4將數組轉換成標量變數:extract()73
3.11進一步學習75
3.12下一章75
第4章字元串操作與正則表達式76
4.1創建一個示例應用程序:智能表單郵件76
4.2字元串的格式化78
4.2.1字元串的整理:chop()、ltrim()和trim()78
4.2.2格式化字元串以便顯示78
4.2.3格式化字元串以便存儲:addslashes()和stripslashes()81
4.3用字元串函數連接和分割字元串82
4.3.1使用函數explode()、implode()和join()82
4.3.2使用strtok()函數83
4.3.3使用substr()函數83
4.4字元串的比較84
4.4.1字元串的排序:strcmp()、strcasecmp()和strnatcmp()84
4.4.2使用strlen()函數測試字元串的長度85
4.5使用字元串函數匹配和替換子字元串85
4.5.1在字元串中查找字元串:strstr()、strchr()、strrchr()和stristr()85
4.5.2查找子字元串的位置:strpos()、strrpos()86
4.5.3替換子字元串:str_replace()、substr_replace()87
4.6正則表達式的介紹88
4.6.1基礎知識88
4.6.2字元集和類88
4.6.3重復89
4.6.4子表達式89
4.6.5子表達式計數90
4.6.6定位到字元串的開始或末尾90
4.6.7分支90
4.6.8匹配特殊字元90
4.6.9特殊字元一覽91
4.6.10在智能表單中應用91
4.7用正則表達式查找子字元串92
4.8使用正則表達式分割字元串93
4.9比較字元串函數和正則表達式函數93
4.10進一步學習93
4.11下一章93
第5章代碼重用與函數編寫94
5.1代碼重用的好處
5.1.1成本94
5.1.2可靠性94
5.1.3一致性95
5.2使用require()和include()函數95
5.2.1文件擴展名和require()語句96
5.2.2使用require()製作Web站點的模版96
5.2.3使用auto_prepend_file和auto_append_file101
5.3在PHP中使用函數101
5.3.1調用函數101
5.3.2調用未定義的函數103
5.3.3理解字母大小寫和函數名稱103
5.4理解為什麼要定義自己的函數103
5.5了解基本的函數結構104
5.5.1函數命名
5.6使用參數105
5.7理解作用域107
5.8參數的引用傳遞和值傳遞109
5.9使用Return關鍵字110
5.9.1從函數返回一個值111
5.10實現遞歸113
5.10.1名稱空間
5.11進一步學習114
5.12下一章114
第6章面向對象的PHP115
6.1理解面向對象的概念115
6.1.1類和對象115
6.1.2多態性116
6.1.3繼承117
6.2在PHP中創建類、屬性和操作117
6.2.1類的結構117
6.2.2構造函數118
6.2.3析構函數118
6.3類的實例化118
6.4使用類的屬性119
6.5使用private和public關鍵字控制訪問121
6.6類操作的調用121
6.7在PHP中實現繼承122
6.7.1通過繼承使用private和protected訪問修飾符控制可見性123
6.7.2重載124
6.7.3使用final關鍵字禁止繼承和重載125
6.7.4理解多重繼承126
6.7.5實現介面126
6.8類的設計127
6.9編寫類代碼128
6.10理解PHP面向對象新的高級功能135
6.10.1使用Per-Class常量135
6.10.2實現靜態方法135
6.10.3檢查類的類型和類型提示136
6.10.4克隆對象136
6.10.5使用抽象類137
6.10.6使用__call()重載方法137
6.10.7使用__autoload()方法138
6.10.8實現迭代器和迭代138
6.10.9將類轉換成字元串140
6.10.10使用Reflection(反射)API140
6.11下一章141
第7章錯誤和異常處理142
7.1異常處理的概念142
7.2Exception類144
7.3用戶自定義異常144
7.4Bob的汽車零部件商店應用程序的異常146
7.5異常和PHP的其他錯誤處理機制150
7.6進一步學習150
7.7下一章150
第二篇使用MySQL
第8章設計Web資料庫151
8.1關系資料庫的概念152
8.1.1表格152
8.1.2列152
8.1.3行152
8.1.4值152
8.1.5鍵152
8.1.6模式153
8.1.7關系153
8.2如何設計Web資料庫154
8.2.1考慮要建模的實際對象154
8.2.2避免保存冗餘數據154
8.2.3使用原子列值155
8.2.4選擇有意義的鍵156
8.2.5考慮需要詢問資料庫的問題156
8.2.6避免多個空屬性的設計156
8.2.7表格類型的總結157
8.3Web資料庫架構157
8.4進一步學習158
8.5下一章158
第9章創建Web資料庫159
9.1使用MySQL監視程序160
9.2登錄到MySQL160
9.3創建資料庫和用戶161
9.4設置用戶與許可權162
9.5MySQL許可權系統的介紹162
9.5.1最少許可權原則162
9.5.2創建用戶:GRANT命令162
9.5.3許可權的類型和級別163
9.5.4REVOKE命令165
9.5.5使用GRANT和REVOKE的例子165
9.6創建一個Web用戶166
9.7使用正確的資料庫166
9.8創建資料庫表167
9.8.1理解其他關鍵字的意思168
9.8.2理解列的類型169
9.8.3用SHOW和DESCRIBE來查看資料庫170
9.8.4創建索引171
9.9理解MySQL的標識符171
9.10選擇列數據類型172
9.10.1數字類型173
9.10.2日期和時間類型174
9.10.3字元串類型174
9.11進一步學習176
9.12下一章176
第10章使用MySQL資料庫177
10.1SQL是什麼177
10.2在資料庫中插入數據177
10.3從資料庫中獲取數據179
10.3.1獲取滿足特定條件的數據181
10.3.2從多個表中獲取數據182
10.3.3以特定的順序獲取數據186
10.3.4分組與合計數據186
10.3.5選擇要返回的行188
10.3.6使用子查詢188
10.4更新資料庫記錄190
10.5創建後修改表191
10.6刪除資料庫中的記錄193
10.7表的刪除193
10.8刪除整個資料庫193
10.9進一步學習194
10.10下一章194
第11章使用PHP從Web訪問MySQL資料庫195
11.1Web資料庫架構的工作原理195
11.2從Web查詢資料庫的基本步驟198
11.2.1檢查與過濾用戶輸入數據198
11.2.2建立一個連接199
11.2.3選擇使用的資料庫200
11.2.4查詢資料庫200
11.2.5檢索查詢結果201
11.2.6從資料庫斷開連接202
11.3將新信息放入資料庫202
11.4使用Prepared語句205
11.5使用PHP與資料庫交互的其他介面206
11.5.1使用常規的資料庫介面:PEARMDB2206
11.6進一步學習209
11.7下一章209
第12章MySQL高級管理210
12.1深入理解許可權系統210
12.1.1user表211
12.1.2db表和host表212
12.1.3tables_priv表,columns_priv表和procs_priv表212
12.1.4訪問控制:MySQL如何使用Grant表213
12.1.5更新許可權:修改什麼時候生效213
12.2提高MySQL資料庫的安全性214
12.2.1從操作系統角度來保護MySQL214
12.2.2密碼214
12.2.3用戶許可權215
12.2.4Web問題215
12.3獲取更多關於資料庫的信息216
12.3.1使用SHOW獲取信息216
12.3.2使用DESCRIBE獲取關於列的信息218
12.3.3用EXPLAIN理解查詢操作的工作過程218
12.4資料庫的優化221
12.4.1設計優化222
12.4.2許可權222
12.4.3表的優化222
12.4.4使用索引222
12.4.5使用默認值222
12.4.6其他技巧222
12.5備份MySQL資料庫222
12.6恢復MySQL資料庫223
12.7實現復制223
12.7.1設置主伺服器224
12.7.2執行初始的數據傳輸224
12.7.3設置一個/多個從伺服器225
12.8進一步學習225
12.9下一章225
第13章MySQL高級編程226
13.1LOADDATAINFILE語句226
13.2存儲引擎226
13.3事務227
13.3.1理解事務的定義227
13.3.2通過InnoDB使用事務228
13.4外鍵229
13.5存儲過程230
13.5.1基本示例230
13.5.2局部變數232
13.5.3游標和控制結構233
13.6進一步學習236
13.7下一章236
第三篇電子商務與安全性
第14章運營一個電子商務網站237
14.1我們要實現什麼目標237
14.2考慮電子商務網站的類型237
14.2.1使用在線說明書公布信息238
14.2.2接收產品或服務的訂單240
14.2.3提供服務和數字產品243
14.2.4為產品或服務增值243
14.2.5減少成本243
14.3理解風險和威脅244
14.3.1網路黑客244
14.3.2不能招攬足夠的生意245
14.3.3計算機硬體故障245
14.3.4電力、通信、網路或運輸故障245
14.3.5廣泛的競爭245
14.3.6軟體錯誤245
14.3.7不斷變化的政府政策和稅收246
14.3.8系統容量限制246
14.4選擇一個策略246
14.5下一章246
第15章電子商務的安全問題247
15.1信息的重要程度247
15.2安全威脅248
15.2.1機密數據的泄露248
15.2.2數據丟失和數據破壞249
15.2.3數據修改250
15.2.4拒絕服務251
15.2.5軟體錯誤251
15.2.6否認252
15.3易用性,性能、成本和安全性253
15.4建立一個安全政策253
15.5身份驗證原則254
15.6加密技術基礎255
15.6.1私有密鑰加密256
15.6.2公有密鑰加密256
15.6.3數字簽名256
15.7數字證書257
15.8安全的Web伺服器258
15.9審計與日誌記錄259
15.10防火牆259
15.11備份數據259
15.11.1備份常規文件260
15.11.2備份與恢復MySQL資料庫260
15.12自然環境安全260
15.13下一章261
第16章Web應用的安全
16.1處理安全性問題的策略
16.1.1以正確心態為開始
16.1.2安全性和可用性之間的平衡
16.1.3安全監視
16.1.4基本方法
16.2識別所面臨的威脅
16.2.1訪問或修改敏感數據
16.2.2數據丟失或破壞
16.2.3拒絕服務
16.2.4惡意代碼注入
16.2.5伺服器被攻破
16.3了解與我們「打交道」的用戶
16.3.1破解人員
16.3.2受影響機器的未知情用戶
16.3.3對公司不滿的員工
16.3.4硬體被盜
16.3.5我們自身
16.4代碼的安全性
16.4.1過濾用戶輸入
16.4.2轉義輸出
16.4.3代碼組織
16.4.4代碼自身的問題
16.4.5文件系統因素
16.4.6代碼穩定性和缺陷
16.4.7執行引號和exec
16.5Web伺服器和PHP的安全性
16.5.1保持軟體的更新
16.5.2查看php.ini文件
16.5.3Web伺服器配置
16.5.4Web應用的商業主機服務
16.6資料庫伺服器的安全性
16.6.1用戶和許可權系統
16.6.2發送數據至伺服器
16.6.3連接伺服器
16.6.4運行伺服器
16.7保護網路
16.7.1安裝防火牆
16.7.2使用隔離區域(DMZ)
16.7.3應對DoS和DDoS攻擊
16.8計算機和操作系統的安全性
16.8.1保持操作系統的更新
16.8.2隻運行必須的軟體
16.8.3伺服器的物理安全性
16.9災難計劃
16.10下一章
第17章使用PHP和MySQL實現身份驗證262
17.1識別訪問者262
17.2實現訪問控制263
17.2.1保存密碼265
17.2.2密碼的加密267
17.2.3保護多個網頁268
17.3使用基本身份驗證269
17.4在PHP中使用基本身份驗證270
17.5在Apache的.htaccess文件中使用基本身份驗證271
17.6使用mod_auth_mysql身份驗證276
17.6.1安裝mod_auth_mysql276
17.6.2使用mod_auth_mysql277
17.7創建自定義身份驗證277
17.8進一步學習278
17.9下一章278
第18章使用PHP和MySQL實現安全事務279
18.1提供安全的事務處理279
18.1.1用戶機器280
18.1.2Internet281
18.1.3我們的系統281
18.2使用加密套接字層(SSL)282
18.3屏蔽用戶的輸入284
18.4提供安全存儲284
18.5存儲信用卡號碼285
18.6在PHP中使用加密技術286
18.6.1安裝GPG286
18.6.2測試GPG288
18.7進一步學習293
18.8下一章293
第四篇PHP的高級技術
第19章與文件系統和伺服器的交互295
19.1文件上載295
19.1.1文件上載的HTML代碼296
19.1.2編寫處理文件的PHP297
19.1.3避免常見上載問題300
19.2使用目錄函數300
19.2.1從目錄讀取300
19.2.2獲得當前目錄的信息302
19.2.3創建和刪除目錄302
19.3與文件系統的交互302
19.3.1獲取文件信息302
19.3.2更改文件屬性304
19.3.3創建、刪除和移動文件305
19.4使用程序執行函數305
19.5與環境變數交互:getenv()和putenv()308
19.6進一步學習308
19.7下一章308
第20章使用網路函數和協議函數309
20.1了解可供使用的協議309
20.2發送和讀取電子郵件309
20.3使用其他Web站點的數據310
20.4使用網路查找函數312
20.5備份或鏡像一個文件
20.5.1使用FTP備份或鏡像一個文件316
20.5.2上傳文件321
20.5.3避免超時321
20.5.4使用其他的FTP函數322
20.6進一步學習322
20.7下一章323
第21章日期和時間的管理324
21.1在PHP中獲取日期和時間324
21.1.1使用date()函數324
21.1.2使用UNIX時間戳325
21.1.3使用getdate()函數326
21.1.4使用checkdate()函數檢驗日期有效性327
21.1.5格式化時間戳
21.2在PHP日期格式和MySQL日期格式之間進行轉換327
21.3在PHP中計算日期329
21.4在MySQL中計算日期329
21.5使用微秒331
21.6使用日歷函數331
21.7進一步學習332
21.8下一章332
第22章創建圖像333
22.1在PHP中設置圖像支持333
22.2理解圖像格式334
22.2.1JPEG334
22.2.2PNG334
22.2.3WBMP335
22.2.4GIF335
22.3創建圖像335
22.3.1創建一個背景圖像336
22.3.2在圖像上繪圖或列印文本337
22.3.3輸出最終圖形338
22.3.4清理339
22.4在其他頁面中使用自動生成的圖像339
22.5使用文本和字體創建圖像339
22.5.1創建基本畫布342
22.5.2將文本調整到適合按鈕342
22.5.3放置文本345
22.5.4將文本寫到按鈕上345
22.5.5完成345
22.6繪制圖像與用圖表描繪數據346
22.7使用其他的圖像函數352
22.8進一步學習352
22.9下一章353
第23章在PHP中使用會話控制354
23.1什麼是會話控制354
23.2理解基本的會話功能354
23.2.1什麼是cookie354
23.2.2通過PHP設置cookie355
23.2.3在會話中使用cookie355
23.2.4存儲會話ID356
23.3實現簡單的會話356
23.3.1開始一個會話356
23.3.2注冊一個會話變數356
23.3.3使用會話變數357
23.3.4注銷變數與銷毀會話357
23.4創建一個簡單的會話例子357
23.5配置會話控制359
23.6通過會話控制實現身份驗證360
23.7進一步學習365
23.8下一章365
第24章其他有用的特性366
24.1使用eval()函數對字元串求值367
24.2終止執行:die和exit367
24.3序列化變數和對象368
24.4獲取PHP環境信息369
24.4.1找到所載入的PHP擴展部件369
24.4.2識別腳本所有者370
24.4.3確定腳本最近修改時間370
24.5暫時改變運行時環境370
24.6源代碼加亮371
24.7在命令行中使用PHP372
24.8下一章372
第五篇創建實用的PHP和MySQL項目
第25章在大型項目中使用PHP和MySQL373
25.1在Web開發中應用軟體工程374
25.2規劃和運行Web應用程序項目374
25.3重用代碼375
25.4編寫可維護代碼375
25.4.1編碼標准375
25.4.2分解代碼378
25.4.3使用標準的目錄結構378
25.4.4文檔化和共享內部函數378
25.5實現版本控制379
25.6選擇一個開發環境380
25.7項目的文檔化380
25.8建立原型381
25.9將邏輯和內容分離381
25.10優化代碼382
25.10.1使用簡單優化382
25.10.2使用Zend產品382
25.11測試383
25.12進一步學習383
25.13下一章384
第26章調試385
26.1編程錯誤385
26.1.1語法錯誤385
26.1.2運行時錯誤386
26.1.3邏輯錯誤391
26.2使用變數幫助調試392
26.3錯誤報告級別393
26.4改變錯誤報告設置394
26.5觸發自定義錯誤395
26.6巧妙地處理錯誤396
26.7下一章398
第27章建立用戶身份驗證機制和個性化設置399
27.1解決方案的組成399
27.1.1用戶識別和個性化設置399
27.1.2保存書簽400
27.1.3推薦書簽400
27.2解決方案概述400
27.3實現資料庫402
27.4實現基本的網站403
27.5實現用戶身份驗證405
27.5.1注冊405
27.5.2登錄410
27.5.3登出413
27.5.4修改密碼414
27.5.5重設遺忘的密碼416
27.6實現書簽的存儲和檢索420
27.6.1添加書簽420
27.6.2顯示書簽422
27.6.3刪除書簽422
27.7實現書簽推薦424
27.8考慮可能的擴展427
27.9下一章427
第28章創建一個購物車428
28.1解決方案的組成428
28.1.1創建一個在線目錄428
28.1.2在用戶購買商品的時候記錄購買行為429
28.1.3實現一個付款系統429
28.1.4創建一個管理界面429
28.2解決方案概述429
28.3實現資料庫432
28.4實現在線目錄434
28.4.1列出目錄434
28.4.2列出一個目錄中的所有圖書437
28.4.3顯示圖書詳細信息438
28.5實現購物車440
28.5.1使用show_cart.php腳本440
28.5.2瀏覽購物車442
28.5.3將物品添加到購物庫444
28.5.4保存更新後的購物車446
28.5.5列印標題欄摘要447
28.5.6結賬447
28.6實現付款452
28.7實現一個管理界面454
28.8擴展該項目460
28.9使用一個已有系統461
28.10下一章461
第29章創建一個基於Web的電子郵件服務系統486
29.1解決方案的組成486
29.1.1電子郵件協議:POP3和IMAP
29.1.2PHP對POP3和IMAP的支持
29.2解決方案概述488
29.3建立資料庫489
29.4了解腳本架構490
29.5登錄與登出495
29.6建立賬戶498
29.6.1創建一個新賬戶499
29.6.2修改已有賬戶501
29.6.3刪除賬戶501
29.7閱讀郵件502
29.7.1選擇賬戶502
29.7.2查看郵箱內容504
29.7.3閱讀郵件消息507
29.7.4查看消息標題509
29.7.5刪除郵件509
29.8發送郵件510
29.8.1發送一則新消息510
29.8.2回復或轉發郵件512
29.9擴展這個項目514
29.10下一章514
第30章創建一個郵件列表管理器515
30.1解決方案的組成515
30.1.1建立列表和訂閱者資料庫516
30.1.2上載新聞信件516
30.1.3發送帶附件的郵件516
30.2解決方案概述516
30.3建立資料庫518
30.4定義腳本架構520
30.5實現登錄526
30.5.1新賬戶的創建527
30.5.2登錄529
30.6用戶函數的實現531
30.6.1查看列表531
30.6.2查看郵件列表信息535
30.6.3查看郵件列表存檔536
30.6.4訂閱與取消訂閱538
30.6.5更改賬戶設置539
30.6.6更改密碼539
30.6.7登出540
30.7管理功能的實現541
30.7.1創建新的郵件列表541
30.7.2上載新的新聞信件543
30.7.3多文件上載的處理545
30.7.4預覽新聞信件549
30.7.5發送郵件550
30.8擴展這個項目555
30.9下一章555
第31章創建一個Web論壇556
31.1理解流程
31.2解決方案的組成556
31.3解決方案概述557
31.4資料庫的設計558
31.5查看文章的樹型結構560
31.5.1展開和折疊561
31.5.2顯示文章564
31.5.3使用treenode類564
31.6查看單個的文章570
31.7添加新文章572
31.8添加擴充578
31.9使用一個已有的系統578
31.10下一章578
第32章生成PDF格式的個性化文檔579
32.1項目概述
32.1.1評估文檔格式579
32.2解決方案的組成582
32.2.1問題與回答系統583
32.2.2文檔生成軟體583
32.3解決方案概述585
32.3.1提問585
32.3.2給答題評分587
32.3.3生成RTF證書589
32.3.4從模板生成PDF證書591
32.3.5使用PDFlib生成PDF文檔595
32.3.6使用PDFlib的一個「HelloWorld」程序595
32.3.7用PDFlib生成證書598
32.4處理標題的問題605
32.5擴展該項目605
32.6下一章606
第33章使用XML和SOAP來連接Web服務607
33.1項目概述:使用XML和Web服務
33.1.1理解XML
33.1.2理解Web服務611
33.2解決方案的組成612
33.2.1使用Amazon的Web服務介面613
33.2.2XML的解析:REST響應
33.2.3在PHP中使用SOAP614
33.2.4緩存614
33.3解決方案概述614
33.3.1核心應用程序618
33.3.2顯示特定種類的圖書623
33.3.3獲得一個AmazonResultSet類624
33.3.4使用REST發送和接收請求
33.3.5使用SOAP發送和接收請求
33.3.6緩存請求返回的數據636
33.3.7創建購物車639
33.3.8到Amazon付賬642
33.4安裝項目代碼642
33.5擴展這個項目643
33.6進一步學習643
第34章使用Ajax構建Web2.0應用
34.1Ajax是什麼?
34.1.1HTTP請求和響應
34.1.2DHTML和XHTML
34.1.3級聯樣式單(CSS)
34.1.4客戶端編程
34.1.5伺服器端編程
34.1.6XML和XSLT
34.2Ajax基礎
34.2.1XMLHTTPRequest對象
34.2.2與伺服器通信
34.2.3處理伺服器響應
34.2.4整合應用
34.3在以前的項目添加Ajax元素
34.3.1在PHPBookmark應用中添加Ajax元素
34.4進一步學習
34.4.1進一步了解文檔對象模型(DOM)
34.4.2Ajax應用可用的JavaScript函數庫
34.4.3Ajax開發人員網站
第六篇附錄
附錄A安裝PHP及MySQL645
附錄BWeb資源664
第1章PHP快速入門教程
第2章數據的存儲與檢索
第3章使用數組
第4章字元串操作與正則表達式
第5章代碼重用與函數編寫
第6章面向對象的PHP
第7章錯誤和異常處理
……
Ⅹ 求php和mysql web開發書籍電子版百度雲資源
《php和mysql web開發》網路網盤免費下載
鏈接: https://pan..com/s/1MWTQ9A2_mx0qgzmmBfs1Vw
《PHP和MySQLWeb開發》是2009年機械工業出版社出版的圖書,作者是LukeWellingLauraThomson。本書將PHP開發與MySQL應用相結合,分別對PHP和MySQL做了深入淺出的分析,不僅介紹PHP和MySQL的一般概念,而且對PHP和MySQL的Web應用做了較全面的闡述,並包括幾個經典且實用的例子。
本書是第4版,經過了全面的更新、重寫和擴展,包括PHP5.3最新改進的特性(例如,更好的錯誤和異常處理),MySQL的存儲過程和存儲引擎,Ajax技術與Web2.0以及Web應用需要注意的安全問題。