標籤:
php檢查MySQL的支援是否開啟?
若沒有看到mysqli擴充在windows伺服器下,開啟php.ini檔案,將php_mysqli.dll開啟即可!
注意:
從PHP7開始預設不再支援mysql擴充,即不再支援mysql_*系列函數。請使用mysqli串連資料庫。
mysqli即支援php5也支援php7。
資料庫連接天龍八步第一步: 串連資料庫伺服器
類型 |
說明 |
函數 |
mysqli_connect |
功能 |
串連到mysql資料庫伺服器 |
參數1 |
主機 |
參數2 |
資料庫伺服器登陸名 |
參數3 |
密碼 |
參數4 |
資料庫的名稱 |
參數5 |
資料庫伺服器連接埠不填預設3306 |
若參數4,資料庫名稱在此步已填並擇,不需要執行第三步。
第二步: 判斷錯誤
類型 |
說明 |
函數 |
mysqli_errno |
功能 |
返回串連錯誤號碼,無錯誤返回0 |
參數1 |
傳入mysqli_connect返回的資源 |
類型 |
說明 |
函數 |
mysqli_error |
功能 |
返回串連錯誤字串 |
參數1 |
傳入mysqli_connect返回的資源 |
第三步: 選擇資料庫
類型 |
說明 |
函數 |
mysqli_select_db |
功能 |
選擇本串連中的資料庫 |
參數1 |
傳入mysqli_connect返回的資源 |
參數2 |
需要串連的資料庫名 |
若在第一步已填資料庫,不需要更換成其他資料庫,則不需要執行第三步。
第四步: 設定字元集
類型 |
說明 |
函數 |
mysqli_set_charset |
功能 |
設定與mysql服力器串連,結果,校正字元集 |
參數1 |
傳入mysqli_connect返回的資源 |
參數2 |
字元集類型 |
第五步: 準備SQL語句
其實就是一個SQL語句的字串。
例如:
sql="insertintouser(username,password)values(′sql="insertintouser(username,password)values(′username‘,‘$password‘)";
我們通常要把變數賦值在SQL語句中使用。可是變數或者SQL語句出錯了,非常不好排查。
我們根據實際工作經驗增加了這一步。
如果在執行此步的時候報錯了,我們可以把SQL語句列印出來,粘貼到phpMyAdmin或者相關工具中。
排錯時,如果執行成功就說明不是SQL語句的問題。如果執行失敗,請仔細檢查SQL語句。
第六步: 發送SQL語句
類型 |
說明 |
函數 |
mysqli_query |
功能 |
發送SQL語句 |
參數1 |
傳入mysqli_connect返回的資源 |
參數2 |
傳入發送的SQL語句 |
SQL語句準備完成,需要通過mysqli_query將SQL語句發送給MySQL伺服器。
MySQL伺服器會執行發送過來的SQL語句進行執行。
第七步: 判斷是否執行正常或者遍曆資料讀取
第6步中,發送的是select類別的語句,通常需要將結果輸出顯示出來。就需要用到遍曆顯示資料的函數。
類型 |
說明 |
函數 |
mysqli_fetch_array |
功能 |
得到result結果集中的資料,返回數組進行遍曆 |
參數1 |
傳入查詢出來的結果變數 |
參數2 |
傳入MYSQLI_NUM返回索引數組,MYSQLI_ASSOC返回關聯陣列,MYSQLI_BOTH返回索引和關聯 |
類型 |
說明 |
函數 |
mysqli_fetch_assoc |
功能 |
得到result結果集中的資料,返回關聯陣列進行便利 |
參數1 |
傳入查詢出來的結果變數 |
類型 |
說明 |
函數 |
mysqli_fetch_row |
功能 |
得到result結果集中的資料,返回索引數組進行便利 |
參數1 |
傳入查詢出來的結果變數 |
類型 |
說明 |
函數 |
mysqli_fetch_object |
功能 |
得到result結果集中的資料,返回對象進行遍曆 |
參數1 |
傳入查詢出來的結果變數 |
類型 |
說明 |
函數 |
mysqli_num_rows |
功能 |
返回查詢出來的結果總數 |
參數1 |
傳入查詢出來的結果變數 |
類型 |
說明 |
函數 |
mysqli_num_rows |
功能 |
返回查詢出來的結果總數 |
參數1 |
傳入查詢出來的結果變數 |
注 |
實際工作中用得非常少,瞭解 |
寫入
第6步中,如果發送的是insert的語句,通常需要得到是否執行成功,或者同時拿到自增的ID。
類型 |
說明 |
函數 |
mysqli_fetch_field |
功能 |
遍曆資料行 |
參數1 |
傳入查詢出來的結果變數 |
修改和刪除
第6步中,如果發送的是update和delete類別的語句。只需要判斷是否執行成功即可。
我們將這些常用函數列出資料表給給大家查看。
第八步: 關閉資料庫
類型 |
說明 |
函數 |
mysqli_close |
功能 |
關閉資料庫連接 |
參數1 |
傳入mysqli_connect返回的資源 |
資料庫連接是一個資源類型。我們在之前的章節中講解資源類型的時候跟大家說過。凡是涉及到數資源類型的有開啟就有關閉。這樣能夠保證PHP更高效的處理和回收資源。
因此,資料庫連接成功後,不需要使用的時候。我們可以關閉這個串連。
其他:顯示伺服器資訊函數
類型 |
說明 |
函數 |
mysqli_get_server_info |
功能 |
返回伺服器資訊 |
參數1 |
傳入mysqli_connect返回的資源 |
類型 |
說明 |
函數 |
mysqli_get_server_version |
功能 |
返回伺服器版本 |
參數1 |
傳入mysqli_connect返回的資源 |
注意:PDO的串連方式才是王道
mysqli只學過程化的方法即可。在物件導向階段實際工作中完全拋棄了mysqli的對象用法,而是使用的是PDO對象串連資料庫的方式。
來自為知筆記(Wiz)
前端PHP入門-033-串連資料庫-天龍八步