Home >Backend Development >PHP Tutorial >PHP connection to MySQL database operation implementation
[Related learning recommendations: mysql tutorial]
Method 1: Ordinary method (process-oriented)
First, make the following assumptions (also applicable to Method 2 and Method 3)
$username=your_name; $userpass=your_pass; $dbhost=localhost; $dbdatabase=your_database;
The following are the key steps:
//生成一个连接 $db_connect=mysql_connect($dbhost,$username,$userpass) or die("Unable to connect to the MySQL!"); //选择一个需要操作的数据库 mysql_select_db($dbdatabase,$db_connect); //执行MySQL语句 $result=mysql_query("SELECT id,name FROM user"); //提取数据 $row=mysql_fetch_row($result); //关闭链接 mysql_close($db_connect);
The code comments have explained everything. However, some additions need to be made here.
① Use @ (error control operator) before mysql_connect(), mysql_select_db() and other functions to ignore the error message generated by the system, and then we use die() to customize the error message;
②When extracting data, in addition to the mysql_fetch_row above, the common ones are mysql_fetch_assoc and mysql_fetch_array. For specific differences, please refer to my other essay "The Connection between mysql_fetch_row(), mysql_fetch_assoc() and mysql_fetch_array() in PHP";
③For the return value of the mysql_query() function, if the executed statement has a return value (such as SELECT, SHOW, DESCRIBE, etc.), the corresponding data (on success) or FALSE (on failure) will be returned; if executed If the statement has no return value (such as DELETE, DROP, INSERT, UPDATE, etc.), it returns TRUE (on success) or FALSE (on failure).
Method 2: Object-oriented method
In fact, this method is very similar to the ordinary method. It just replaces the corresponding function with an object-oriented method and looks at the code directly.
$db=new mysqli($dbhost,$username,$userpass,$dbdatabase); if(mysqli_connect_error()){ echo 'Could not connect to database.'; exit; } $result=$db->query("SELECT id,name FROM user"); $row=$result->fetch_row();
What is used here is mysqli, which means an extension of mysql. It can interact with the database in either a process-oriented way or an object-oriented way. The only difference is that the function (object method) is called. The way is different.
Method 3: PDO method
PDO is actually the abbreviation of PHP Database Objects, which means PHP database object in Chinese. It provides a unified method for PHP to interact with the database.
This is currently a popular method of connecting to the database. Its advantage is that as long as the data source is provided correctly, the rest of the basic operations on the database are the same. In other words, the same piece of code can interact with MySQL, SQLite3, and of course PostgreSQL, provided you provide the correct data source. Let's take a look at the code to connect to MySQL:
$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';'
$dbh=new PDO ($dsn,$username,$userpass);
If it is SQLite3, use the following code directly:
$dsn='sqlite3:"C :\sqlite\user.db"';
$dbh=new PDO($dsn);
If it is PostgreSQL, the following code can deal with it:
$dsn='pgsql:host='.$dbhost.' port=5432 dbname='.$dbdatabase.' user='.$username.' password='.$userpass;
$dbh= new PDO($dsn);
After successfully establishing a connection with the database, you only need to obtain data from the database or insert and update data. The example code is as follows:
$stmt=$dbh->query('SELECT id,name FROM user');
$row=$stmt->fetch();
This is it , the article comes to an end. Of course, the above is just a brief introduction to the simplest operations related to PHP and the database. There is a lot of knowledge behind such as insertion, sorting, preventing SQL injection, etc. that need to be learned in depth. I hope to have the opportunity to discuss with you and make progress together.
Related learning recommendations: php programming (video)
The above is the detailed content of PHP connection to MySQL database operation implementation. For more information, please follow other related articles on the PHP Chinese website!