7PHP網(wǎng)站開發(fā)系列課程.ppt_第1頁
7PHP網(wǎng)站開發(fā)系列課程.ppt_第2頁
7PHP網(wǎng)站開發(fā)系列課程.ppt_第3頁
7PHP網(wǎng)站開發(fā)系列課程.ppt_第4頁
7PHP網(wǎng)站開發(fā)系列課程.ppt_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、溫故,上節(jié)課程學(xué)習(xí)了什么? 1.為什么要使用函數(shù) 2.如何定義一個(gè)函數(shù) 3.變量的作用范圍 4.函數(shù)的參數(shù) 5.函數(shù)的返回值 7. 磁盤函數(shù) 目錄函數(shù) 文件處理函數(shù),知新,這節(jié)課,我們將學(xué)習(xí)到以下內(nèi)容(重點(diǎn)) 1.MySQL數(shù)據(jù)庫是什么? 2.如何讓PHP連接到MySQL數(shù)據(jù)庫 3.如何讓PHP提取MySQL數(shù)據(jù)庫的數(shù)據(jù) 4.如何讓PHP刪除MySQL數(shù)據(jù)庫的數(shù)據(jù) 5.如何添加數(shù)據(jù)、更新數(shù)據(jù) 6.額外知識:MySQL數(shù)據(jù)庫的錯(cuò)誤處理,第六章 PHP和MySQL,1.什么是MySQL? MySQL是最受歡迎的開源SQL數(shù)據(jù)庫管理系統(tǒng),由瑞典的 T.c.X. DataKonsultAB開發(fā)、發(fā)布和

2、支持。MySQL AB是 一家基于MySQL開發(fā)人員的商業(yè)公司,它是一家使用了一 種成功的商業(yè)模式來結(jié)合開源價(jià)值和方法論的第二代開源公 司。 MySQL是一個(gè)快速的、多線程、多用戶和健壯的SQL數(shù)據(jù) 庫服務(wù)器。MySQL服務(wù)器支持關(guān)鍵任務(wù)、重負(fù)載生產(chǎn)系統(tǒng) 的使用,也可以將它嵌入到一個(gè)大配置(mass-deployed)的 軟件中去。,第六章 PHP和MySQL,2.為什么要學(xué)和用MySQL 可以同時(shí)處理幾乎不限數(shù)量的用戶; 處理多達(dá)50,000,000以上的記錄; 命令執(zhí)行速度快,現(xiàn)今執(zhí)行速度最快的數(shù)據(jù)庫; 簡單有效的用戶特權(quán)系統(tǒng)。,第六章 PHP和MySQL,3.誰在用MySQL,第六章 P

3、HP和MySQL,如何操作MySQL數(shù)據(jù)庫: 1.使用MySQL自帶的客戶端連接工具操作 2.使用PHPMYADMIN對數(shù)據(jù)庫進(jìn)行操作 3.使用開發(fā)工具附帶的MySQL擴(kuò)展,第六章 PHP和MySQL,phpMyAdmin是什么? phpMyAdmin 是采用PHP編寫的一個(gè)專門用于在 線管理 My SQL 數(shù)據(jù)庫的軟件。 phpMyAdmin可以在 下載到它。 phpMyAdmin安裝: 直接將phpMyAdmin放入到你網(wǎng)站的目錄下 (假設(shè)放在網(wǎng)站根目 錄下的phpMyAdmin) ,輸入http:/域名/phpMyAdmin/ 就可以 直接訪問了。 如果在本機(jī)調(diào)試 就可以直接輸入 htt

4、p:/localhost/phpMyAdmin/index.php,第六章 PHP和MySQL,配置你的phpMyAdmin 當(dāng)你第一次使用phpMyAdmin的時(shí)候,你可以會(huì) 遇到下面的問題: 問題1:賬號密碼錯(cuò)誤。 問題2:無法連接數(shù)據(jù)庫服務(wù)器。,第六章 PHP和MySQL,配置phpMyAdmin 錯(cuò)誤原因: 發(fā)生第一種錯(cuò)誤的原因是因?yàn)槟愕腗ySQL服務(wù)器 中的root用戶已經(jīng)設(shè)置了密碼。 解決方案: 在你的網(wǎng)頁目錄中找到phpMyAdmin文件夾, 在phpMyAdmin中找到config.inc.php文件。 修改以下內(nèi)容。,修改登陸MySQL的方式為HTTP,第六章 PHP和MyS

5、QL,使用PHPMyAdmin操作MySQL 1.新建用戶 2.修改密碼 3.授予權(quán)限 4.創(chuàng)建數(shù)據(jù)庫 5.創(chuàng)建數(shù)據(jù)表 6.創(chuàng)建索引 7.數(shù)據(jù)庫備份與恢復(fù),第六章 PHP和MySQL,PHP和MySQL的合作 數(shù)據(jù)庫連接函數(shù) 1.數(shù)據(jù)庫連接函數(shù) 打開一個(gè)MySQL服務(wù)器的連接: Mysql_connect (服務(wù)器名,用戶名,密碼); 打開一個(gè)MySQL服務(wù)器的持久連接: Mysql_pconnect(服務(wù)器名,用戶名,密碼); 關(guān)閉MySQL服務(wù)器連接 Mysql_close(連接標(biāo)識);,第六章 PHP和MySQL,想一想: Mysql_connect和mysql_pconnect這2種連

6、接 MySQL數(shù)據(jù)庫的函數(shù)有什么區(qū)別?,第六章 PHP和MySQL,Mysql_pconnect與Mysql_connect的區(qū)別: 首先,當(dāng)使用持久連接的時(shí)候函數(shù)將先嘗試尋找一個(gè)在同一 個(gè)主機(jī)上用同樣的用戶名和密碼已經(jīng)打開的(持久)連接, 如果找到,則返回此連接標(biāo)識而不打開新連接。 其次,當(dāng)腳本執(zhí)行完畢后到 MySQL 服務(wù)器的連接不會(huì)被關(guān) 閉,此連接將保持打開以備以后使用(mysql_close() 不 會(huì)關(guān)閉由 mysql_pconnect() 建立的連接)。,請求index.php頁面,定位文件,index.php,客戶端,服務(wù)器,MySQL Server 數(shù)據(jù)庫服務(wù)器,建立普通連接,

7、將SQL語句通過連接發(fā)送到數(shù)據(jù)庫,程序執(zhí)行完成 關(guān)閉連接,輸出結(jié)果,返回頁面內(nèi)容,使用MYSQL_CONNECT連接數(shù)據(jù)庫,使用MYSQL_PCONNECT連接數(shù)據(jù)庫,請求index.php頁面,定位文件,index.php,客戶端,服務(wù)器,MySQL Server 數(shù)據(jù)庫服務(wù)器,輸出結(jié)果,返回頁面內(nèi)容,持久連接,判斷是否有用相同 用戶名密碼已建立 的持久連接。 如果有,則不打開 新的連接而直接使 用已打開的連接。,程序執(zhí)行結(jié)束后,將不會(huì)關(guān)閉 連接。,第六章 PHP和MySQL,3.數(shù)據(jù)庫操作函數(shù) 1. Mysql_select_db(數(shù)據(jù)庫名)選擇將要操作的數(shù)據(jù)庫 2. Mysql_quer

8、y(SQL語句)發(fā)送一條SQL查詢 3. Mysql_db_query(數(shù)據(jù)庫名,SQL語句) 向指定數(shù)據(jù)庫中的某張表發(fā)送一條SQL查詢 范例-Examples3.php,第六章 PHP和MySQL,4.結(jié)果處理函數(shù) Mysql_fetch_array(結(jié)果集) 從結(jié)果集中取出一行做為關(guān)聯(lián)數(shù)組和數(shù)字?jǐn)?shù)組。 Mysql_fetch_row(結(jié)果集) 從結(jié)果集中取出一行做為數(shù)字?jǐn)?shù)組。 Mysql_fetch_assoc(結(jié)果集) 從結(jié)果集中取出一行作為關(guān)聯(lián)數(shù)組。,第六章 PHP和MySQL,Mysql_fetch_object(結(jié)果集) 從結(jié)果中中取出一行做為對 象。 Mysql_fetch_fi

9、eld(結(jié)果集) 從結(jié)果集中返回一個(gè)包含字段 信息的對象。 Mysql_num_rows(結(jié)果集) 取得結(jié)果集中的結(jié)果數(shù)目,第六章 PHP和MySQL,Mysql_free_result(結(jié)果集) 釋放結(jié)果內(nèi)存 范例-Examples4.5 .php,第六章 PHP和MySQL,額外知識:PHP中的MySQL錯(cuò)誤處理函數(shù) Mysql_errno() 返回上一個(gè)MySQL操作中的錯(cuò)誤信息數(shù)字編號 Mysql_error() 返回上一個(gè)MySQL函數(shù)的錯(cuò)誤文本,第六章 PHP和MySQL,額外知識: PHP中的MySQL錯(cuò)誤處理函數(shù) Die(字符信息) 輸出字符信息后終止程序的運(yùn)行.(類似于exi

10、t) 操作符 當(dāng)將其放置在一個(gè) PHP 表達(dá)式之前,該表達(dá)式可 能產(chǎn)生的任何錯(cuò)誤信息都被忽略掉。 如果激活了 track_errors 特性,表達(dá)式所產(chǎn)生的 任何錯(cuò)誤信息都被存放在變量 $php_errormsg 中,第六章 PHP和MySQL,額外知識: 相關(guān)MySQL函數(shù) mysql_affected_rows() 取得前一次 MySQL 操作所影響的記錄行數(shù),當(dāng)我們對表Music進(jìn)行選取操作 SELECT music_id,music_name FROM Music 下列行將被選中,那么 這條SQL語句影響的行數(shù)就應(yīng)該是所有紀(jì)錄條數(shù) 當(dāng)我現(xiàn)在要執(zhí)行的SQL語句如下: INSERT INT

11、O Music (musicname,musicps,putouttime,singer,star,musicpic) VALUES (testMusic,myTestMusic,2006-11-23,test, ,1.jpg) 那么下列行將被插入到數(shù)據(jù)庫:,那么,剛才那條INSERT語句影響的行數(shù)為 1 行 那么,讓我們再來看看DELETE語句的操作過程 如果我有以下DELETE語句,我們來看它的操作過程 DELETE FROM Music WHERE music_id = 15 那么他首先會(huì)在數(shù)據(jù)表中搜索到這條music_id為15的記錄,然后將它刪除掉。,那么 剛才我們的那個(gè)DELETE

12、語句影響的行數(shù)將為 1行 現(xiàn)在 我們改動(dòng)一下剛才我們所發(fā)送的那條DELETE語句 讓其變?yōu)?DELETE FROM Music WHERE music_id = 2000 同樣的 數(shù)據(jù)庫首先會(huì)在你指定的表中去查找這條音樂 編號為2000的音樂,但是數(shù)據(jù)庫里根本就沒有符合要求 的這條音樂,所以也無法刪除。 所以當(dāng)這條SQL語句運(yùn)行后,它影響的行數(shù)將為 0 行。,看完了 INSERT SELECT DELETE 語句 我們再來看看我 我們常用的UPDATE語句是一個(gè)怎樣的執(zhí)行過程。 UPDATE music SET musicname = UPDATE testMusic WHERE music_

13、id = 17 那么同樣的,數(shù)據(jù)庫首先會(huì)在表中查找符合條件的紀(jì)錄,然后將這條符合條件的紀(jì)錄中的相應(yīng)項(xiàng)進(jìn)行修改,修改成功后 它影響的行數(shù)將為 1 行。 假設(shè)執(zhí)行下面的語句: UPDATE music SET musicname = UPDATE testMusic WHERE music_id = 2000 那么數(shù)據(jù)庫同樣會(huì)去先查找這條紀(jì)錄,但是數(shù)據(jù)庫中沒有 編號為2000的歌曲 那么這條SQL語句將為 0行。,如果現(xiàn)在我有以下UPDATE語句執(zhí)行 那么會(huì)發(fā)生什么 情況呢? 我們首先看一下經(jīng)過剛才的一些操作 表的情況是什么樣的,那么 我現(xiàn)在執(zhí)行 UPDATE music SET musicnam

14、e = UPDATE testMusic WHERE music_id = 17 也就是說 我要修改的值跟數(shù)據(jù)庫中這個(gè)字段的值是一樣的 那么會(huì)發(fā)生什么情況呢? 我們看看他的執(zhí)行步驟 1.在表中查找到 music_id 為17的紀(jì)錄 2.檢查musicname 的值是否為你要修改的值 在這里就有2種不同的操作方式了 1.如果要修改的值跟原先保存的不同,那么用新的值將原先 的值覆蓋掉。影響行數(shù)為 1 行。 2.如果要修改的值跟原來保存的值相同,那么就不修改原有 的值。影響行數(shù)為 0 行。,第六章 PHP和MySQL,額外知識: 相關(guān)MySQL函數(shù) mysql_insert_id() 取得上一步 INSERT 操作產(chǎn)生的 ID 返回一個(gè)int值 針對AUTO_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論