2008年11月26日

基礎應用(一) PHP連結MySQL資料庫及其設定

用實例來進行說明書撰寫,故從實作開始,目標是建立一個搜尋古籍資料的簡單網站

首先對資料進行正規劃,在MySQL建立Table

1.登入MySQL Administrator GUI Tools


2.點選Catalogs選項(1.),會在下方出現資料庫列表(2.)


3.若未建立需使用的資料庫,則在(2.)的地方點選右鍵選擇Create New Schema


4.輸入資料庫名稱


5.建立好資料庫,或使用已存在的資料庫時,在左方資料庫列表的地方點選要建立資料表的資料庫,然後點選Create Table建立資料表


6.

  1)資料表名稱
  2)資料表所屬資料庫
  3)資料表說明
  4)欄位名稱
  5)資料型態
  6)是否允許Null值
  7)是否自動編號
  8)預設值
  9)欄位說明
 10)主鍵欄位:只要在欄位名稱前點選,會自動帶到此地方來

7.切換到Table Options頁籤,將Charset設定為utf8,這是為了日後使用中文時顯示正常而設定


8.設定好後點選最下方的Apply Changes完成建立資料表

(在進行下一步前需先建立資料)

9.建立連結資料庫的共用檔案:一方面可以供給許多需要使用資料庫的頁面include,一方面可將該檔案設定較高的安全性,以防php頁遭破解時連資料庫的帳號密碼都被取得

建立一個名為connectDB.inc的檔案
內容為


<?php

$cfgDB_HOST = "localhost"; //主機名稱或ip位址
$cfgDB_PORT = "3306";     
//主機開放連線的port
$cfgDB_USERNAME = "test";  //登入主機帳號
$cfgDB_PASSWORD = "    ";  //登入主機密碼
$cfgDB_NAME = "books";     //資料庫名稱

//建立資料庫連線
$link = mysql_connect($cfgDB_HOST . ":" . $cfgDB_PORT, $cfgDB_USERNAME,

$cfgDB_PASSWORD) or die("Could not connect MySQL");

//選擇資料庫
mysql_select_db($cfgDB_NAME, $link) or die("Could not select database");

//讓中文正常顯示
mysql_query("SET NAMES 'utf8'"); 

?>



10.建立連結MySQL資料庫資料的網頁

<html>
<head>
<meta content="text/html;charset=UTF-8"
http-equiv="Content-Type">
<title>TestPHP</title>
</head>
<body>

<?php 
include ("connectDB.inc"); //載入連線檔案

$sql = "SELECT * from bookinfor"; //給予SQL指令

$result = mysql_query($sql) or die("invalid query"); //傳給MySQL指令

while($record=mysql_fetch_array($result)) //將所有資料顯示出來
{
 echo "id: $record[0]<br>"; //第一種讀取資料庫欄位的方法,使用欄位序號
 echo "name: ".$record["bookname"]."<br>"; //第二種讀取資料庫欄位方法,使用欄位名稱
}

?>

</body>
</html>



最後顯示結果(如果資料表中有資料的話)



0 意見:

張貼留言