成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

百寶箱之介紹PHP Web查詢數據庫基本步驟

開發 后端
WEB開發是強大的,文章這里詳細的介紹了PHP Web查詢數據庫的基本步驟,希望對大家有技術上的提高。

PHP是開發WEB動態頁面的***編程,最近看了一本書收獲很多,現在和大家一起分享一下PHP Web查詢數據庫的知識,下面我們就一起來看看吧。從PHP Web查詢數據庫的基本步驟:

1. 檢查并過濾來自用戶的數據 首先,我們將過濾用戶可能在其搜索條件的起始或結束位置不小心輸入的空白字符,這是用函數trim()來實現。 我們這么麻煩的檢查用戶輸入數據的原因是防止多個接口連接數據庫,因為用戶從不同的界面進入,這樣可能導致安全問題。

然后,當準備使用用戶輸入的任何數據時,也要適當的過濾一些控制字符,當用戶輸入數據到數據庫時必須轉義數據,,此時使用盜的函數有 addslashes()函數、stripslashes()函數和get_magic_qutoes_gpc()函數。 addslashes()函數為了數據庫查詢語句等的需要在某些字符前加上了反斜線;stripslashes()函數去掉字符串中的反斜線字符;get_magic_qutoes_gpc()函數 魔術添加轉義字符 “”,獲取當前活動配置magic_quotes_runtime設置,如果運行時關閉魔術引號,返回0,否則返回1。我們也可以使用 htmispecialchars()對HTML中的特殊意義字符警醒編碼,htmispecialchars()函數把一些預定義的字符轉換為 HTML 實體 預定義的字符是:& (和號) 成為 & " (雙引號) 成為 " ' (單引號) 成為 ' < (小于) 成為 < > (大于) 成為 >

2. 建立一個到適當數據庫的連接 PHP為連接MySQL提供了函數庫mysqli(i表示改進)。

當在PHP中使用mysqli函數庫是可以使用面向對象或面向過程的語法:

1)面向對象, @ $db = new mysqli('hostname','username','password','dbname');返回一個對象

2)面向過程: @ $db = mysqli_connect('hostname','username','password','dbname');返回一個資源,這個資源表示數據庫的連接,而且 如果使用過程方法,必須將這個資源傳遞到mysqli的所有其它函數。

這與處理函數非常類似mysqli的大多數函數都有面向對象接口和過程接口,二者的差異則在于過程版本的函數名稱以mysqli_開頭,同時要求傳入 mysqli_connect()函數獲得的資源句柄。對于這個規則來說,數據可連接是一個異常,因為它是由mysqli對象的構造函數來創建的。因此嘗試連接時需要進行檢查,mysqli_connect_errno()函數將在出現連接 錯誤時返回一個錯誤號,如果成功,則返回0.

請注意:當連接到數據庫是,通常會議錯誤抑制符@作為***含代碼。這樣可以巧妙的處理任何錯誤,也可以通過異常來處理。另外,MySQK對同時連接數據庫的連接數量有一定的限制。MySQLi參數max_connections決定了同時連接的個數,該參數和相關的Apache參數 MaxClients的作用是告訴服務器拒絕新的連接請求,從而保證系統資源不會再系統忙碌時或系統癱瘓時被請求或使用。要設置Apache中的 MaxClients參數可以編輯系統中的httpd.conf文件。要為MySQLi設置max_connections參數可以編輯文件my.conf。

選擇使用的數據庫: 在MySQL命令行使用 use dbname;命令;在php中可以用$db->select_db(dbname);或mysqli_select_db(db_resource,dbname)。

3. 查詢數據庫 要執行數據庫查詢,首先應構造查詢語句:$query = "select  from user";然后運行 $result = $db->query($query);或者$result = mysqli_query($db,$query); 面向對象版本將返回一個結果對象;過程版本將返回一個結果資源。無論何種方法都將結果保存在$result變量中工以后使用。如果函數運行失敗將返回 false。

4. 獲取查詢結果 使用不同的函數以不同的方式將查詢結果從結果對象或標識符中取出來,結果對象或標識符是訪問查詢返回行的關鍵。

#T#通常我們要得到結果集中記錄行的行數,并且使用mysqli_fetch_assoc()函數。返回行數:$num_results = $result->num_rows;(行數保存在對象的num_rows成員變量中)或$num_results = mysqli_num_rows($result);然后使用循環遍歷每一行,在循環中調用 $row = $result->fectch_assoc();或者 $row = mysqli_fetch_assoc($result);返回該行的信息。如果是對象返回行則每個關鍵詞為一個屬性名,每個值為屬性中的相應的值;如果以資源返回則返回數組。

還有其他從結果標識符中獲取結果的方法,例如:使用$row = $result->fecth_row($result);或者$row = mysqli_fetch_row($result);將結果取回到一個列舉數組中;也可以使用$row = $result->fecth_object();或者 $row = mysqli_fecth_object($result);江一行去回到一個對象中。

5. 從數據庫斷開 先釋放結果集:$result->free();或 mysqli_free_result($result);然后關閉數據庫連接:$db->close()或者 mysqli_close($db); 嚴格的說,這并不必須,因為腳本執行完畢的時候他們將被自動關閉。

以上就是PHP Web查詢數據庫的基本步驟,不知道大家學會了嗎?趕快試試吧。

責任編輯:田樹 來源: 博客
相關推薦

2009-11-16 14:52:16

PHP數組

2015-09-22 15:24:27

SDNDocker

2015-09-22 16:11:41

SDNDocker

2009-10-28 18:35:10

Linux基礎用戶

2009-10-28 14:51:33

VB.NET設計制作窗

2009-10-28 13:54:38

linux安裝顯卡驅動

2009-10-28 12:05:32

linux監控技術

2011-04-13 09:40:27

2025-04-17 08:28:13

2009-11-05 11:12:21

WCF自宿主

2009-10-27 13:14:35

VB.NET窗體應用

2009-11-09 11:31:47

WCF消息隊列

2009-10-28 09:48:31

VB.NET XmlR

2009-11-03 16:17:39

ADO.NET Ent

2009-10-27 15:42:04

VB.NET文件對象

2009-11-12 14:18:19

ADO.NET分頁

2016-01-14 14:17:51

密碼管理密碼分析安全工具

2009-11-03 16:57:34

ADO.NET FAQ
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕在线一 | 亚洲视频在线观看 | 久久激情视频 | 亚洲精品中文字幕在线 | 亚洲一二三视频 | 久久tv在线观看 | 亚洲视频在线观看 | 国产精品99久久久久久www | 99精品免费在线观看 | 操久久 | 日韩视频在线免费观看 | 中文字幕91| 美女天堂在线 | 龙珠z在线观看 | 噜久寡妇噜噜久久寡妇 | 日韩一区二区在线播放 | 久久97精品| 午夜国产一级 | 免费美女网站 | 一区网站 | 精品久久电影 | 丁香久久| 亚洲精品久久 | 久久亚洲欧美日韩精品专区 | 亚洲逼院 | 欧美精品第一区 | 亚洲精品免费观看 | 亚洲品质自拍视频网站 | 精品一区二区三区不卡 | 日本一区二区高清视频 | 激情 亚洲| 天天操天天插 | 国产视频精品区 | 亚洲综合在线视频 | 午夜欧美a级理论片915影院 | 麻豆久久久久久久久久 | 色综合久久天天综合网 | 亚洲精品久久久一区二区三区 | 先锋资源吧 | 国产精品亚洲综合 | 欧美日韩电影一区二区 |