The examples in this article share two php data access methods for you to compare and analyze The similarities and differences between the two methods are finally provided with a small exercise for everyone. The specific content is as follows
Method 1: Outdated, just for understanding
1. Create a connection (establish a channel)
$db=mysql_connect("localhost","root","123"); //The brackets are "server address", "username", "password"
2. Choose which database to operate
mysql_select_db("mydb","$db");
3. Write sql statement
$sql="select * from Info";
4. Execute sql statement
$result=mysql_query($sql); //query means query
5. Get data from the result set ($result)
$row=mysql_fetch_row($result); //每执行一次读取一行数据 $row1=mysql_fentch_row($result); //执行第二条数据 var_dump($row); //读取全部数据用循环: while($row=mysql_fetch_row($result)) { var_dump($row); }
Method 2: Object-oriented
1. Create a connection object:
$db=new MySQLi("localhost","root","123","mydb") //The contents in brackets are "server address", "user name", "password", "database name" ”
2. Determine whether the connection is wrong:
2.1 mysqli_connect_error(); //Represents a connection error
2.2
if(mysqli_connect_erroe())
{
echo "Connection failed!";
exit(); //Exit the program
}
2.3 !mysqli_connect_error or die ("Connection failed!"); //The front of "or" means the connection is correct, and the back means the connection failed
3. Write sql statement:
$sql="select * from nation";
4. Execute sql statement: if the execution is successful, return the result set object, if the execution fails, return false
$result=$db->query($sql);
5. Read data from the result set and first determine whether there is data
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()); }
Exercise:
1. Display the nation table on the page in the form of a drop-down menu
$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. Check out the Info table and display it in table form
$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>"; }
The above is the entire content of this article. I hope it will be helpful to everyone in learning PHP programming.