本文實例為大家分享了兩種php數據訪問方式,大家可以進行比較,分析兩種方式的異同,最後為大家提供了一個小練習,具體內容如下
方式一:已過時,只做了解
1.造一個連接(建立通道)
$db=mysql_connect("localhost","root","123"); //括號內是“服務器地址”,“用戶名”,“密碼”
2.選擇操作哪個數據庫
mysql_select_db("mydb","$db");
3.寫sql語句
$sql="select * from Info";
4.執行sql語句
$result=mysql_query($sql); //query 有查詢之意
5.從結果集($result)中取數據
$row=mysql_fetch_row($result); //每執行一次讀取一行數據
$row1=mysql_fentch_row($result); //執行第二條數據
var_dump($row);
//讀取全部數據用循環:
while($row=mysql_fetch_row($result))
{
var_dump($row);
}
方法二:面向對象
1.造一個連接對象:
$db=new MySQLi("localhost","root","123","mydb") //括號內的內容依次為“服務器地址”,“用戶名”,“密碼”,“數據庫名稱”
2.判斷連接是否出錯:
2.1 mysqli_connect_error(); //代表連接出錯
2.2
if(mysqli_connect_erroe())
{
echo "連接失敗!";
exit(); //退出程序
}
2.3 !mysqli_connect_error or die ("連接失敗!"); //“or”前面代表連接正確,後面代表連接失敗
3. 寫sql語句:
$sql="select * from nation";
4. 執行sql語句:如果執行成功返回結果集對象,如果執行失敗返回false
$result=$db->query($sql);
5.從結果集中讀取數據,先判斷是否有數據
if($result)
{
//返回一行數據的索引數組,每次執行返回一條數據
var_dump($result->fetch_row());
while($row=$result->fetch_row)
{
var_dump($row);
}
//返回一行數據的關聯數組,每次執行返回一條數據
var_dump($result->fetch_row());
//通過二維數組返回所有數據
var_dump($result->fetch_all());
//以對象的方式返回一行數據
var_dump($result->fetch_object());
}
練習:
1.以下拉菜單的形式在頁面顯示nation表
$db=new MySQLi("localhost","root","","mydb");
!mysqli_connection_erroe() or die ("連接失敗!");
$sql="select*from nation";
$result=$db->query($sql);
if($result)
{
$att=$result->fetch_all();
echo "<select>";
foreach ($att as $value)
{
echo "<option value='{$value[0]}'>{$value[1]}</option>";
}
echo "</select>";
}
2. 把Info表查出來,以表格的形式顯示
$db=new MySQLi("localhost","root","","mydb");
!mysqli_connecton_error() or die("連接失敗!");
$sql="select * from info";
$result=$bd->query($sql);
if($result)
{
$att=$result->fetch_all();
echo "<table border='1' width='100%' cellpadding='0' cellspacing='0'>";
echo "<tr><td>代號</td><td>姓名</td><td>性別</td><td>民族</td><td>生日</td></tr>";
foreach ($att as $value)
{
echo "<tr>
<td>{$value[0]}</td>
<td>{$value[1]}</td>
<td>{$value[2]}</td>
<td>{$value[3]}</td>
<td>{$value[4]}</td>
</tr>";
}
echo "</table>";
}
//也可以用for循環
if($result)
{
$arr=$result->fetch_all();
echo "<table border='1' width='100%' cellpadding='0' cellspacing='0'>";
echo "<tr><td>Code</td><td>Name</td><td>Sex</td><td>Nation</td><td>Birthday</td></tr>";
for($i=0;$i<count($arr);$i++)
{
echo "<tr>
<td>{$arr[$i][0]}</td>
<td>{$arr[$i][1]}</td>
<td>{$arr[$i][2]}</td>
<td>{$arr[$i][3]}</td>
<td>{$arr[$i][4]}</td>
</tr>";
}
echo "</table>";
}

以上就是本文的全部內容,希望對大家學習php程序設計有所幫助。