国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySql數據庫AdoDB函數實例詳解

2024-07-24 12:37:16
字體:
來源:轉載
供稿:網友

1.GetAll方法我們可以使用GetAll方法代替Execute()方法,該方法返回的結果為一個二維關聯數據,這樣可以使用foreach或for循環語句處理,非常方便,另外,GetAll取得的數組與Smarty模板的foreach配合得非常好.

我們一起看下面的腳本例子,代碼如下:

  1. <?php 
  2. include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""root""library"or die("Unable to connect"); 
  7. // 構造并執行一個查詢 
  8. $query = "SELECT * FROM library"
  9. $result = $db->GetAll($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  10. // 清除無用的對象 
  11. $db->Close(); 
  12. // 可以使用print_r打印該數組的內容 
  13. // print_r($result); exit(0); 
  14. // 遍歷記錄集,顯示列的內容:TITLE 和AUTHOR 
  15. foreach ($result as $row){ 
  16. echo $row[1] . " - " . $row[2] . "n"
  17. // 取得和顯示返回的記錄行數 
  18. echo "n[" . sizeof($result) . " 行記錄被返回]n"
  19. ?> 

GetAll()方法取得記錄集后m產生一個二維數組m類似于下面的樣子,代碼如下:

  1. Array 
  2. [0] => Array 
  3. [0] => 14 
  4. [id] => 14 
  5. [1] => Mystic River 
  6. [title] => Mystic River 
  7. [2] => Dennis Lehane 
  8. [author] => Dennis Lehane 
  9. [1] => Array 
  10. [0] => 15 
  11. [id] => 15 
  12. [1] => For Kicks 
  13. [title] => For Kicks 
  14. [2] => Dick Francis 
  15. [author] => Dick Francis 
  16.    //下略 

我們在數組一章,提到過這類混合數組最適合用foreach來處理,這種方法是對Execute()方法的補充或替代,尤其適合在遍歷查詢整個表時使用.

另外,ADODB還提供取得一條記錄的方法:GetOne().

2.GetOne()方法ADODB有個比較直接的方法可以比較方便地檢測某條記錄是否存在,那就是它的GetOne($sql)方法,該方法返回查詢記錄的第1條第1個字段名的值,如果執行過程中出現錯誤,則返回布爾值false.

我們可以檢測這個值是否存在,代碼如下:

  1. <?php 
  2. Include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “passwd”, “adodb”) or die("Unable to connect!"); 
  7. $rs = $db->GetOne("SELECT * FROM library WHERE id='$id'"); 
  8. if($rs){ 
  9. echo '記錄存在'
  10. }else { 
  11.    echo '記錄不存在'
  12. ?> 

不過這樣有一個問題是,如果數據表中id=$id的記錄有多條,不僅僅要知道是否存在有這樣一條記錄,還要把這條記錄提取出來,則可以使用ADODB的GetRow()方法.

3.GetRow()方法,代碼如下:

  1. <?php 
  2. Include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “passwd”, “adodb”) or die("Unable to connect!"); 
  7. $rs = $db->GetRow("SELECT * FROM library WHERE id='$id'"); 
  8. if(is_array($rs)){ 
  9.    echo '記錄存在'
  10.    print_r($rs); 
  11. else { 
  12.    echo '記錄不存在'
  13. ?> 

需要注意的是,GetOne($sql) 和 GetRow($sql) 都能得到一條特定的記錄,或者得到該記錄不存在的信息,但是如果符合查詢條件的記錄存在多條時,則這兩個方法只傳回第一條記錄,其他的都自動拋棄.

如果只要得到查詢結果的行數,則可以使用結果集方法中的RecordCount()方法.

4.取得返回的記錄行數ADODB還提供了一批實用功能,如在進行查詢時,提供了非常有用的RecordCount() 和FieldCount()方法,分別返回記錄的數量和字段的數量,以下是應用這兩個方法的例子,代碼如下:

  1. <?php 
  2. include("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “passwd”, “adodb”) or die("Unable to connect!"); 
  7. // 構造并執行一個查詢 
  8. $query = "SELECT * FROM library"
  9. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  10. // 取得和顯示返回的記錄行數 
  11. echo $result->RecordCount() . " 行記錄被返回n"
  12. // 取得和顯示返回的字段個數 
  13. echo $result->FieldCount() . " 個字段被返回n"
  14. // clea up 
  15. $db->Close(); 
  16. ?> 

我們可以使用FetchField()方法取得字段的信息,其中含有該字段的詳細資料,包括名稱和類型等,請看如下的腳本例子,代碼如下:

  1. <?php 
  2. include("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""passwd""adodb"or die("Unable to connect!"); 
  7. // 構造并執行一個查詢 
  8. $query = "SELECT * FROM library"
  9. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  10. // 取得記錄集中字段的結構信息 
  11. for($x=0; $x<$result->FieldCount(); $x++){ 
  12. print_r($result->FetchField($x)); 
  13. // 清理無用的對象 
  14. $db->Close(); 
  15. ?> 

下面輸出的是有關id字段的結構信息,代碼如下:

  1. stdClass myMagicbject 
  2. [name] => id 
  3. [table] => library 
  4. [def] => 
  5. [max_length] => 3 
  6. [not_null] => 1 
  7. [primary_key] => 1 
  8. [multiple_key] => 0 
  9. [unique_key] => 0 
  10. [numeric] => 1 
  11. [blob] => 0 
  12. [type] => int 
  13. [unsigned] => 1 
  14. [zerofill] => 0 
  15. [binary] => 

5.其他相關方法當執行一個INSERT查詢時,如果該表的主鍵是一個自動增量的字段,則可以使用ADODB的insert_id()方法,來獲得最后數據插入時自動產生的增量值,代碼如下 :

  1. <?php 
  2. include_once(“libs/adodb/adodb.inc.php”); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “root”, “adodb”) or die("Unable to connect!"); 
  7. // 構造并執行INSERT插入操作 
  8. $title = $db->qstr("PHP5與MySQL5 Web開發技術詳解"); 
  9. $author = $db->qstr("杜江"); 
  10. $query = "INSERT INTO library (title, author) VALUES ($title, $author)"
  11. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  12. // 顯示插入的記錄號 
  13. if ($result){ 
  14. echo "最后插入的記錄ID: " . $db->Insert_ID(); 
  15. // 清理無用的對象 
  16. $db->Close(); 
  17. ?> 

腳本中的qstr()方法,功能是過濾SQL查詢中的非法字符,執行后,即無論查詢(SELECT)、刪除(DELETE)或修改(UPDATE)數據,如果想知道是否對表有影響,可以使用affected_rows()方法,它可以告訴我們操作后有多少(記錄)行受到了影響,請看下面的腳本例子,代碼如下:

  1. <?php 
  2. include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “root”, “adodb”) or die("Unable to connect!"); 
  7. // 構造并執行一個查詢 
  8. $query = "DELETE FROM library WHERE author = 'J. Luser'"
  9. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  10. // 取得和顯示執行后影響的記錄行數 
  11. if ($result){ 
  12. echo $db->Affected_Rows() . " 行已被刪除"
  13. // 清理無用的對象 
  14. $db->Close(); 
  15. ?> 

6.限制查詢結果上面 我們討論了如何通過使用一個數據庫庫函數使應用程序更簡潔,更易于移植,比如從MS SQL Server轉移到MySQL,在MS SQL Server中使用指令“SELECT TOP 15 name FROM employee”取得數據的前15條,可在MySQL中卻不支持這種寫法,而要寫成:SELECT name FROM employee LIMIT 15.

它似乎對我們敲響了警鐘,應該停止在查詢語句中使用非標準SQL指令,而去認真地學習標準的SQL.

幸運的是,ADODB有一個處理 LIMIT的方法:SelectLimit(),這樣我們就根本不用管連接的是MySQL還是MS SQL Server,ADODB會在底層為我們自動轉換,請見下面的腳本例子,代碼如下:

  1. <?php 
  2. include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""passwd""adodb"or die("Unable to connect!"); 
  7. // 構造并執行一個查詢 
  8. // 我們要取得5行記錄,從符合記錄的第3行開始取 
  9. $query = "SELECT * FROM library"
  10. $result = $db->SelectLimit($query, 5, 3) or die("Error in query: $query. " . $db->ErrorMsg()); 
  11. // 遍歷記錄集 
  12. while (!$result->EOF) { 
  13. echo $result->fields[1] . " - " . $result->fields[2] . "n"
  14. $result->MoveNext(); 
  15. // 清理無用的對象 
  16. $db->Close(); 
  17. ?> 

在這個例子中,selectlimit()方法類似于MySQL的LIMIT語句,可用于控制從某行開始查詢,到某行的結果,從而取得我們指定的記錄集.

我們可以利用ADODB提供的MetaDatabases()方法取得當前服務器中所有數據庫的清單,還有一個方法和它很類似,即使用MetaTables()方法可以取得當前庫中所有表的清單,請看下面的例子,代碼如下:

  1. <?php 
  2. include(“libs/adodb/adodb.inc.php”); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""passwd""adodb"or die("Unable to connect!"); 
  7. // 取得數據列表 
  8. echo "數據庫:n"
  9. foreach($db->MetaDatabases() as $d){ 
  10. echo "* $dn"
  11. // 取得數據表清單 
  12. echo "n當前數據庫下的表:n"
  13. foreach($db->MetaTables() as $table){ 
  14. echo "* $tablen"
  15. // 清理無用的對象 
  16. $db->Close(); 
  17. ?> 

7.快速存取有時,我們需要對一些不同的值做一些特殊的查詢,比如一系列的INSERT(插入)語句,ADODB類提供了兩個方法,可以使我們既節約時間又節省系統的開銷,請看如下示例,代碼如下:

  1. <?php 
  2. include(“libs/adodb/adodb.inc.php”); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""passwd""adodb"or die("Unable to connect!"); 
  7. // 構造準備查詢,使用參數綁定 
  8. $query = $db->Prepare("INSERT INTO library (title, author) VALUES (?, ?)"); 
  9. // 從CSV 中取得要插入的標題和作者名稱 
  10. $data = file("./book_list.csv"); 
  11. // 遍歷該文件,并執行插入操作 
  12. foreach ($data as $l){ 
  13. $arr = explode(","$l); 
  14. // 插入值并綁定準備語句 
  15. $result = $db->Execute($queryarray($arr[0], $arr[1])) or die("Error in query: $query. " . $db->ErrorMsg()); 
  16. // 清理無用的對象 
  17. $db->Close; 
  18. ?> 

prepare()函數,把一個SQL查詢作為參數,讀取一個查詢,但并不立即執行,prepare()返回一個句柄給一個prepare查詢,當保存和傳遞給Execute()方法后,則立即執行該查詢.

8.處理事務處理事務是許多應用程序的一個重要的特征,比如,錢從你的賬戶轉出,然后轉入到某個人的賬戶中,只要其中任意一步操作失敗,這整個過程都必須被認定為失敗,不然,錢被劃出,而沒有進對方的賬戶,或者,錢沒有劃出,但對方賬戶無端多了一筆錢.

處理事務可以在代碼級上進行機警地管理控制,常數錯誤檢查被用來判斷執行COMMIT,事務的所有各項都正確,執行正確,結束事務,還是執行ROLLBACK,事務中有錯誤,所有改動需要恢復原來狀況.

現在的數據庫系統絕大多數都支持事務,如MySQL、Oracle、MS SQL Server等,ADODB提供一個非常好的功能,能夠讓你更透明地使用這一特性,請看下面的例子,代碼如下:

  1. <?php 
  2. include(“libs/adodb/adodb.inc.php”); 
  3. // 創建一個mysql連接實例對 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost", “root”, “root”, “adodb”) or die("Unable to connect!"); 
  7. //關閉auto-commit自動提交事務 
  8. // 開始事務處理語句塊 
  9. $db->BeginTrans(); 
  10. // 第一次查詢 
  11. $query = "INSERT INTO library (title, author) VALUES ('測試用書', '佚名')"
  12. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  13. //使用第一次查詢返回的ID號 
  14. if ($result){ 
  15. $id = $db->Insert_ID(); 
  16. $query = "INSERT INTO purchase_info (id, price) VALUES ($id, 'RMB 31.9')"
  17. $result = $db->Execute($query
  18. or die("Error in query: $query. " . $db->ErrorMsg()); 
  19. // 如果操作成功 
  20. if ($result){ 
  21. // 事務提交 
  22. $db->CommitTrans(); 
  23. }// 否則回滾 
  24. else
  25. $db->RollbackTrans(); 
  26. // 清理無用的對象 
  27. $db->Close; 
  28. ?> 

該腳本首先,需要關掉數據庫的auto commit功能,通過begintrans()方法來處理,這種方法也標志著一個事務的開始,可以使用CommitTrans()或 RollbackTrans()函數來處理操作,一旦auto commit已經關掉,你就可以任意執行所需要的查詢,確認事務的查詢執行無誤并完畢后,由我們自己決定何時執行commit操作.

每 一 次執行Execute()事務塊后,它會返回一個布爾值,告訴我們是否成功地執行了查詢,可以跟蹤到這個值,以及使用的時間,以決定是否要進行整個交易行為,一旦你相信一切都沒問題,則告訴數據庫committrans()方法,如果發現有錯誤發生,則可以進行回滾操作——執行 rollbacktrans()方法.

值得注意的是,注意您的數據庫類型是否支持這些事務函數,前面已經說過,MySQL的InnoDB類型表支持事務,但是MyISAM類型并不支持.

9.使用緩存查詢在一個動態頁面中,如果其中的一個查詢指令很少改變且頻繁被執行,我們則可以使用ADODB的緩存功能,可以將查詢指令的結果緩存成靜態文件,從而提高PHP腳本的性能.

當試圖通過緩存來提高你的應用程序的性能之前,建議先去優化查詢指令再開始本操作,這樣才會起到事半功倍之效果.

ADODB最棒的功能就是提供查詢緩存的功能,緩存可以大大改善應用程序的性能,尤其是網站系統,因為大部分用戶都是在瀏覽網站,數據庫完成的任務多半是查詢,SELECT操作,為了更好地理解與應用緩存查詢的功能,我們來看下面的腳本例子,代碼如下:

  1. <?php 
  2. include_once("libs/adodb/adodb.inc.php"); 
  3. // 創建一個mysql連接實例對象 
  4. $db = NewADOConnection("mysql"); 
  5. // 打開一個數據庫連接 
  6. $db->Connect("localhost""root""root""adodb"or die("Unable to connect!"); 
  7. // 構造并執行一個查詢 
  8. $query = "SELECT * FROM library"
  9. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  10. // 遍歷返回的記錄集,顯示列數據的內容 TITLE 和 AUTHOR 
  11. while (!$result->EOF) { 
  12. echo $result->fields[1] . " - " . $result->fields[2] . "n"
  13. $result->MoveNext(); 
  14. // 顯示取得的記錄行數 
  15. echo "n[" . $result->RecordCount() . " 行記錄被返回]n"
  16. // 關閉數據庫連接 
  17. $db->Close(); 
  18. ?> 

這段代碼使用ADODB進行一個SELECT操作,比如說,這就是您的網站,平均有每分鐘5000次的點擊(PV,Page View)量,那么數據庫系統每小時至少要被查詢3萬次以上,可以想象,這對我們的MySQL數據庫的負載是相當繁重的.

因此ADODB提供了緩存的功能,可以將經常查詢的結果保存起來,進而降低數據庫服務器的負荷,同時也向用戶提供更快速的內容響應.

下面是修改上面的腳本,改為使用CacheExecute來進行緩存查詢的示例,代碼如下:

  1. <?php 
  2. include("libs/adodb/adodb.inc.php"); 
  3.  
  4. //設置緩存保存的路徑,.表示當前目錄 
  5. $ADODB_CACHE_DIR = '.'//為了管理方便,實際開發環境請指向到獨立的目錄中,如/tmp/adodb 
  6. // 創建一個mysql連接實例對象 
  7. $db = NewADOConnection("mysql"); 
  8.  
  9. // 打開一個數據庫連接 
  10. $db->Connect("localhost""root""passwd""adodb"or die("Unable to connect!"); 
  11.  
  12. // 構造并執行一個查詢 
  13. $query = "SELECT * FROM library"
  14. $result = $db->CacheExecute(300,$queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  15.  
  16. // 遍歷返回的記錄集,顯示列數據的內容 TITLE 和 AUTHOR 
  17. while (!$result->EOF) { 
  18. echo $result->fields[1] . " - " . $result->fields[2] . "n"
  19. $result->MoveNext(); 
  20.  
  21. // 取得和顯示返回的記錄行數 
  22. echo "n[" . $result->RecordCount() . " 行記錄被返回]n"
  23. //Vevb.com 
  24. // 關閉數據庫連接 
  25. $db->Close(); 
  26. ?> 

CacheExecute()方法的第一個參數是緩存文件(緩存文件被命名為adodb_*.cache)將被保留的時間,以秒計時,第二個參數是SQL聲明,第一個參數是可選擇的,若沒有限定時間,默認值是3600秒,也就是1個小時.

值得一提的是,使用CacheExcute()方法時,需要將php.ini中的參數magic_quotes_runtime設為0,也可以根據需要,在程序運行時動態修改它的值:

set_magic_quotes_runtime(0);

注意:將上述代碼放到調用數據庫的指令之前,我們還可以在任何時候,通過調用CacheFlush()來清除過時的緩存.

10.生成下拉列表菜單ADODB特意為Web開發任務提供幾個通用的方法,其中,最有用的是GetMenu()方法,通過抽取數據庫的記錄集,自動地生成表單及菜單列表框.

下面介紹的就是從數據庫動態構建下拉菜單(Option)的例子,代碼如下:

  1. <html> 
  2. <head></head> 
  3. <body> 
  4. <?php 
  5. include_once("libs/adodb/adodb.inc.php"); 
  6.  
  7. // 創建一個mysql連接實例對象 
  8. $db = NewADOConnection("mysql"); 
  9.  
  10. // 打開一個數據庫連接 
  11. $db->Connect("localhost""root""root""library"or die("Unable to connect!"); 
  12.  
  13. // 構造并執行一個查詢 
  14. $query = "SELECT title, id FROM library"
  15. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  16.  
  17. //顯示HTML下拉列表菜單 
  18. echo $result->GetMenu("library"'', false); 
  19.  
  20. // 關閉數據庫連接 
  21. $db->Close(); 
  22. ?> 
  23. </body> 
  24. </html> 

GetMenu()方法需要傳入參數,用來控制列表框的行為,上例中第一個參數是列表框的名字(這個例子為“library”),第二個參數是顯示時默認的值,可以為空,從第一個記錄開始,第三個參數,指定列表框的項目是否為空,第四個參數,控制是否允許用戶多選.

上例的顯示結果如下:

  1. <select name="library" > 
  2. <option value="15">Mystic River</option> 
  3. <option value="16">Where Eagles Dare</option> 
  4. <option value="17">XML and PHP</option> 
  5. </select> 

可以看到,該列表菜單內容是從library表抽取的記錄,列表框的名字為“library”,在記錄集中,ID是菜單選項的值,名稱為菜單框顯示的元素.

由此可以看出,GetMenu()方法可以大幅度簡化Web開發任務,大大減少代碼量.

11.輸出到文件ADODB還允許我們將記錄輸出為一個不同形式的文件,如逗號分隔符CSV文件,制表符表格,甚至于HTML形式的表格.

這些功能屬于ADODB的附屬功能,在使用時需要包含相關ADODB類文件,下面是樣例的內容,代碼如下:

  1. <?php 
  2. include("libs/adodb/adodb.inc.php"); 
  3. // 包含轉換方法的文件 
  4. include_once("libs/adodb/toexport.inc.php"); 
  5. // 創建一個mysql連接實例對象 
  6. $db = NewADOConnection("mysql"); 
  7. // 打開一個數據庫連接 
  8. $db->Connect("localhost""root""passwd""library"or die("Unable to connect!"); 
  9. // 構造并執行一個查詢 
  10. $query = "SELECT title, id FROM library"
  11. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  12. // 返回一個CSV字符串 
  13. echo rs2csv($result); 
  14. // 關閉數據庫的連接 
  15. $db->Close(); 
  16. ?> 
  17. //輸出結果如下: 
  18. title,id 
  19. Mystic River,15 
  20. Where Eagles Dare,16 
  21. XML and PHP,17 

我們也可以去除結果中第一行,即字段的名稱,使用腳本格式如下:

返回一個 CSV 字符串:echo rs2csv($result, false);

腳本的輸出結果將沒有字段名稱,如下:

Mystic River,15

Where Eagles Dare,16

XML and PHP,17

ADODB還提供生成制表符或分隔符文件功能,使用rs2tab()方法,代碼如下:

  1. <?php 
  2. include("libs/adodb/adodb.inc.php"); 
  3. // 包含轉換方法的文件 
  4. include("toexport.inc.php"); 
  5. //創建一個mysql連接實例對象 
  6. $db = NewADOConnection("mysql"); 
  7. // 打開一個數據庫連接 
  8. $db->Connect("localhost""root""root""library"or die("Unable to connect!"); 
  9. // 構造并執行一個查詢 
  10. $query = "SELECT title, id FROM library"
  11. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  12. // 返回一個TAB制表符分隔的字符串 
  13. echo rs2tab($result); 
  14. // 關閉數據庫連接 
  15. $db->Close(); 
  16. ?> 
  17. //顯示結果如下: 
  18. title   id 
  19. Mystic River   15 
  20. Where Eagles Dare   16 
  21. XML and PHP   17 

ADODB還提供生成HTML表格的功能,使用rs2html()方法,代碼如下:

  1. <html> 
  2. <head></head> 
  3. <body> 
  4. <?php 
  5. include_once(“libs/adodb/adodb.inc.php”); 
  6.  
  7. // 包含轉換方法的文件 
  8. include_once("libs/adodb/tohtml.inc.php"); 
  9.  
  10. // 創建一個mysql連接實例對象 
  11. $db = NewADOConnection("mysql"); 
  12.  
  13. // 打開一個數據庫連接 
  14. $db->Connect("localhost""root""passwd""library"or die("Unable to connect!"); 
  15.  
  16. // 構造并執行一個查詢 
  17. $query = "SELECT title, id FROM library"
  18. $result = $db->Execute($queryor die("Error in query: $query. " . $db->ErrorMsg()); 
  19.  
  20. // 返回一個HTML格式的表格 
  21. echo rs2html($result); 
  22.  
  23. // 關閉數據庫連接 
  24. $db->Close(); 
  25. ?> 
  26. </body> 
  27. </html>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 饶阳县| 河南省| 红河县| 克东县| 商城县| 葫芦岛市| 民丰县| 大埔县| 云浮市| 翁源县| 崇文区| 临澧县| 福清市| 井冈山市| 常山县| 岱山县| 离岛区| 满洲里市| 阿荣旗| 木里| 砚山县| 柳州市| 驻马店市| 东安县| 民勤县| 罗源县| 莱芜市| 伽师县| 呼和浩特市| 平远县| 岗巴县| 宁夏| 明溪县| 凤阳县| 黄浦区| 汉沽区| 二连浩特市| 犍为县| 恭城| 东阳市| 勐海县|