PHP串連MySQL資料庫執行個體
對於熟悉做網站的人來說,要想網站做成動態,肯定要有資料庫的支援,利用特定的指令碼串連到資料庫,從資料庫中提取資H料、向資料庫中添加資料、刪除資料等。這裡我通過一個執行個體來說明如何用PHP串連到MySQL資料庫的。
我準備建立一個簡單的通訊錄,資料庫的名字叫txl,資料庫只有一個表叫personal_info,表中有5個欄位
pi_id pi_name pi_tel pi_qq pi_email
首先我們要建立資料庫:
create database txl;
然後我們建立表
CREATE TABLE `personal_info` (
`pi_id` bigint(20) NOT NULL auto_increment,
`pi_name` varchar(50) NOT NULL,
`pi_tel` varchar(15) default NULL,
`pi_qq` varchar(15) default NULL,
`pi_email` varchar(50) default NULL,
PRIMARY KEY (`pi_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
上面的sql語句很簡單,通過字面都能猜出什麼意思。
下面是串連到資料庫並且顯示表personal_info的所有欄位資訊:
// connsql.php
<?php
$mysql_server_name="localhost"; //資料庫伺服器名稱
$mysql_username="root"; // 串連資料庫使用者名稱
$mysql_password="root"; // 串連資料庫密碼
$mysql_database="lxr"; // 資料庫的名字
// 串連到資料庫
$conn=mysql_connect($mysql_server_name, $mysql_username,
$mysql_password);
// 從表中提取資訊的sql語句
$strsql="select * from personal_info";
// 執行sql查詢
$result=mysql_db_query($mysql_database, $strsql, $conn);
// 擷取查詢結果
$row=mysql_fetch_row($result);
echo '<font face="verdana">';
echo '<table border="1" cellpadding="1" cellspacing="2">';
// 顯示欄位名稱
echo "/n<tr>/n";
for ($i=0; $i<mysql_num_fields($result); $i++)
{
echo '<td bgcolor="#000F00"><b>'.
mysql_field_name($result, $i);
echo "</b></td>/n";
}
echo "</tr>/n";
// 定位到第一條記錄
mysql_data_seek($result, 0);
// 迴圈取出記錄 何問起
while ($row=mysql_fetch_row($result))
{
echo "<tr>/n";
for ($i=0; $i<mysql_num_fields($result); $i++ )
{
echo '<td bgcolor="#00FF00">';
echo "$row[$i]";
echo '</td>';
}
echo "</tr>/n";
}
echo "</table>/n";
echo "</font>";
// 釋放資源 hovertree.com
mysql_free_result($result);
// 關閉串連
mysql_close();
?>
下面是運行結果:
pi_id pi_name pi_tel pi_qq pi_email
1 Zhangsan 13911111111 642864125 bkjia@bkjia.com
2 Lisi 13122222222 63958741 lisi@bkjia.com
3 Wangwu 13833333333 912345678 wangwu@bkjia.com
所謂“萬變不離其宗”,再複雜的操作也都是基於上面的來的,都少不了上面的基本的步驟,當需要時查一下相關的手冊便可以解決。
附參考代碼:
<h1>插入操作</h1>
<?php
if(!isset($_POST['submit'])){
//如果沒有表單提交,顯示一個表單
?>
<form action="" method="post">
國家:<input type="text" name="country" />
動物名稱(英文):<input type="text" name="animal" />
動物名稱(中文):<input type="text" name="cname" />
<input type="submit" name="submit" value="提交表單" />
</form>
<?php
}
else
{
//如果提交了表單 hovertree.com
//資料庫連接參數
$host = "localhost";
$user = "root";
$pass = "zq19890319";
$db = "phpdev";
//取得表單中的值,檢查表單中的值是否符合標準,並做適當轉義,防止SQL注入
$country = empty($_POST['country'])? die("請輸入國家名稱"):
mysql_escape_string($_POST['country']);
$animal = empty($_POST['animal'])? die("請輸入英文名"):
mysql_escape_string($_POST['animal']);
$cname = empty($_POST['cname'])? die("請輸入中文名"):
mysql_escape_string($_POST['cname']);
//開啟資料庫連接 何問起
$connection = mysql_connect($host, $user, $pass) or die("Unable to connect!");
//選擇資料庫
mysql_select_db($db) or die("Unable to select database!");
//構造一個SQL查詢
$query = "INSERT INTO symbols(country, animal, cname) VALUE('$country', '$animal', '$cname')";
//執行該查詢
$result = mysql_query($query) or die("Error in query: $query. ".mysql_error());
//插入操作成功後,顯示插入記錄的記錄號
echo "記錄已經插入, mysql_insert_id() = ".mysql_insert_id();
//關閉當前資料庫連接
mysql_close($connection);
}
?>
本文永久更新連結地址: