Home  >  Article  >  Backend Development  >  Learning PHP--Two ways to connect to MySQL

Learning PHP--Two ways to connect to MySQL

WBOY
WBOYOriginal
2016-08-08 09:26:48816browse

Record two ways for PHP to connect to MySQL.

First mock the data and execute sql.

/*创建数据库*/
CREATE DATABASE IF NOT EXISTS `test`;

/*选择数据库*/
USE `test`;

/*创建表*/
CREATE TABLE IF NOT EXISTS `user` (
    name varchar(50),
    age int
);

/*插入测试数据*/
INSERT INTO `user` (name, age) VALUES('harry', 20), ('tony', 23), ('harry', 24);

The first is to use PHP’s native method to connect to the database. The code is as follows:

php
$host = 'localhost';
$database = 'test';
$username = 'root';
$password = 'root';
$selectName = 'harry';//要查找的用户名,一般是用户输入的信息

$connection = mysql_connect($host, $username, $password);//连接到数据库
mysql_query("set names 'utf8'");//编码转化
if (!$connection) {
    die("could not connect to the database.\n" . mysql_error());//诊断连接错误
}
$selectedDb = mysql_select_db($database);//选择数据库
if (!$selectedDb) {
    die("could not to the database\n" . mysql_error());
}
$selectName = mysql_real_escape_string($selectName);//防止SQL注入
$query = "select * from user where name = '$selectName'";//构建查询语句
$result = mysql_query($query);//执行查询
if (!$result) {
    die("could not to the database\n" . mysql_error());
}
while ($row = mysql_fetch_row($result)) {
    //取出结果并显示
    $name = $row[0];
    $age = $row[1];
    echo "Name: $name ";
    echo "Age: $age ";
    echo "\n";
}

The operating structure is as follows:

Name: harry Age: 20 
Name: tony Age: 23 

The second method is to use PDO to connect to the database. The code is as follows:

php
$host = 'localhost';
$database = 'test';
$username = 'root';
$password = 'root';
$selectName = 'harry';//要查找的用户名,一般是用户输入的信息

$pdo = new PDO("mysql:host=$host;dbname=$database", $username, $password);//创建一个pdo对象
$pdo->exec("set names 'utf8'");
$sql = "select * from user where name = ?";
$stmt = $pdo->prepare($sql);
$rs = $stmt->execute(array($selectName));

if ($rs) {
    // PDO::FETCH_ASSOC 关联数组形式
    // PDO::FETCH_NUM 数字索引数组形式
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        $name = $row['name'];
        $age = $row['age'];
        echo "Name: $name ";
        echo "Age: $age ";
        echo "\n";
    }
}

$pdo = null;//关闭连接

The result is the same as the first one.

The above introduces the learning of PHP - two ways to connect to MySQL, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn