資料庫程式設計 – PHP+MySQL 第五章 SQL 語言與 PHP/MySQL  上一頁       下一頁

翻轉工作室:粘添壽     course_db E-R 關聯圖 <開啟>

 

5-4 PHP MySQL

5-4-1 PHP MySQL 連結步驟

交談式 SQL 命令大多應用在管理資料庫方面,要發展一套資料庫的應用管理系統,還是需要透過一般系統發展工具才行,這裡所要介紹的是利用 PHP 網頁發展工具,來結合 SQL 語言,成為一套完整的網頁資料庫發展系統。

5-6 是透過 PHP 連線存取 MySQL 資料庫的步驟,以下分別說明之:

5-6 PHP 連線存取 MySQL 步驟

(1) $db_link = mysql_connect(“localhost”, “root”, “123456”)要求連結資料庫伺服器系統。透過網路連結到資料庫系統,如成功則傳回一個整數型態的連線識別碼 $db_link,否則傳回 0。其中,localhost 表示資料庫伺服器的主機位址(IP URL 位址亦可),與連線要求的使用者名稱(root)與密碼(123456)

(2) $select_db = mysql_select_db(course_db)選擇資料庫,一個伺服器系統內大多會被建立多個資料庫,可利用此函數選擇其中某一個資料庫(course_db),成功則傳回一個整數的識別碼存入 $select_db,否則傳回 0

(3) $sql_ID = mysql_query($sql_query)送出 SQL 查詢語言 $sql_query,須先將查詢語句存入 $sql_ID 內。成功則傳回一個整數識別碼給 $result,否則傳回 0

(4) $row = mysql_fetch_row($sql_ID)擷取查詢結果($sql_ID) 的一列(row)資料,並將游標往下移,將擷取結果傳回 $row 內,如傳回空值表示已擷取完或沒有查詢成功。

(5) mysql_close($db_link)要求與資料庫伺服器之間連線中斷。

 

5-4-2 範例研討:PHP MySQL 連線

(A) 程式功能:Ex5_5.php

請編寫一只網頁連結資料庫伺服器的測試程式,伺服器位址在本機電腦(localhost),使用者名稱是 root,密碼是:123456。期望顯示連線成功否如下所示。

連線失敗則顯示:

(B) 程式範例:

我們利用 $db_link = mysql_connect(“localhost”, “root”, “123456”) 函數連結伺服器系統,如下: (利用記事本編輯)

1

2

3

4

5

6

7

8

?php

        $db_link = mysql_connect(“localhost”, “root”, “123456”);

        if(!$db_link) {

                echo “MySQL 伺服器連結失敗”;}

        else {

                echo “MySQL 伺服器連結成功”; }

        mysql_close($db_link);

?>

(C) 執行程式

利用記事本編輯 Ex5_5.php 程式後,並存放在 c:/appServ/www 目錄下,再開啟瀏覽器檔案,譬如儲存於 c://appServ/www/book/chap5 目錄下,則輸入:http://localhost/book/chap5/Ex5_5.php

 

5-4-3 範例研討:PHP 與資料庫連線

(A) 程式功能:Ex5_ 6.php

伺服器連線成功後。接著再練習連結某一資料庫( course_system),期望顯示連線成功否如下所示。

(B) 程式範例:

我們利用 $select_db = mysql_select_db(course_db)函數來選擇連結 course_system資料庫,如下:

1

2

3

4

5

6

7

8

9

10

<?php

        $db_link = mysql_connect(“localhost”, “root”, “123456”)

                or die(“MySQL 伺服器連結失敗 <br>”);

        $select_db = mysql_select_db(“course_db”);

        if (!select_db)

                echo “無法開啟資料庫 !<br>”;

        else

                echo “course_system 資料庫開啟成功”;

        mysql_close($db_link);

?>

 

<GOTOP>