要用php連接mysql數據庫,那麼我們首先就要連接到該數據庫,我們使用下面的函數進行連接
$sql_link = mysql_connect("主機名","登入用戶名","登入用戶名密碼");
如果連接成功,就會返回一個mysql句柄,可以簡單的理解成這個$sql_link 是php跟mysql的一個橋樑,通過該橋樑我們可以進入到mysql。進入到mysql之後,我們要選擇一個數據庫,對mysql進行操作,我們使用下面的函數進行選擇一個數據庫
mysql_select_db("數據庫名","這個參數可以不要");
之後我們執行一些mysql語句,使用下面的函數$result = mysql_query( "sql語句","這個參數可以不要");
執行一些mysql語句時,有兩種情況:1.沒有返回結果,比如刪除數據,修改編碼什麼的。
2.有返回結果,比如查詢數據,此時我們用一個變量接收。例如下面的語句,返回的是一張表,可以看成是一個二維數組。
$result = mysql_query( "select * from person_list",$sql_link );//返回一個資源,目前是一張表
通過$result 可以知道這個表的很多信息,我們需要使用相應的函數來獲取我們所需要的信息。1.這個表有幾個字段。
mysql_num_fields( $result );
2.這個表有幾條記錄。mysql_num_rows( $result );
3.這個表的字段名字。mysql_field_name( $result, $index );
4.以索引數組的方式,一條一條的獲取這個數組,執行一次指針偏移一次。mysql_fetch_row( $result );
5.以關聯數組的方式,一條一條的獲取這個數組,執行一次指針偏移一次。mysql_fetch_assoc( $result );
6.自己指定指針的位置。mysql_data_seek( $result, 3 );
7.
有時候我們對數據庫進行操作,通過影響的行數來判斷有沒有成功。mysql_affected_rows();//可以有參數
下面給出一個完成的代碼,來演示讀取數據信息(test 數據庫下的 person_list表),並顯示在頁面上(還不會處理頁面上亂碼的問題)。<?php
header('Content-type: text/html; charset=UTF-8');
//要連接的數據庫的信息
define("DB_HOST","localhost");//主機名
define("DB_USER","root");//登入戶名
define("DB_USER_PWD","rootmysql");//登入用戶密碼
//連接到數據庫
$sql_link = mysql_connect(DB_HOST,DB_USER,DB_USER_PWD);
if( $sql_link )//判斷是否連接成功
echo "連接數據庫成功<br />";
else
echo mysql_error( $sql_link )."<br />";
$db_name = "test";//要連接哪個數據庫
mysql_select_db($db_name,$sql_link);
$sql_sentence = "select * from person_list";//要執行的SQL語句
//$sql_sentence = "desc person_list";//要執行的SQL語句
$result = mysql_query( $sql_sentence,$sql_link );//返回一個資源,目前是一張表
echo '<table border="1px" width="500px" height="400px">';
echo '<tr>';
for( $index = 0; $index < mysql_num_fields( $result ); $index++ )
echo '<td>'.mysql_field_name( $result, $index ).'</td>';
echo '</tr>';
while( $row = mysql_fetch_row( $result ) )
{
echo '<tr>';
foreach( $row as $value )
echo '<td>'.$value.'</td>';//echo '<td>'.$value.' </td>';
echo '</tr>';
}
echo '</table>';
?>