PHP中如何连接数据库并执行查询操作

闪耀之星喵 2022-05-07 ⋅ 20 阅读

PHP是一种服务器端脚本语言,广泛用于构建动态网页应用程序。在开发中,连接和操作数据库是非常常见的需求。本文将介绍如何使用PHP连接数据库并执行查询操作。

1. 准备工作

在使用PHP连接数据库之前,我们需要做一些准备工作:

  • 安装数据库管理系统,如MySQL、PostgreSQL等。
  • 安装PHP。
  • 确保数据库服务器正在运行。

2. 连接数据库

PHP通过mysqliPDO扩展库提供了与数据库交互的功能。这里我们以mysqli为例,介绍如何连接数据库。

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "mydatabase";

// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功!";

// 关闭连接
$conn->close();
?>

上述代码中,我们使用mysqli类创建了一个数据库连接对象$conn,并传入相应的参数。如果连接失败,我们通过connect_error属性输出错误信息。连接成功后,我们可以输出"连接成功!"。

3. 执行查询操作

接下来我们介绍如何使用PHP执行查询操作。

3.1 查询数据

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "mydatabase";

// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 查询数据
$sql = "SELECT * FROM users";
$result = $conn->query($sql);

// 输出查询结果
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
    }
} else {
    echo "0 结果";
}

// 关闭连接
$conn->close();
?>

上述代码中,我们首先创建了一个查询语句$sql,然后通过query方法执行查询操作,并将查询结果保存在$result变量中。接着我们使用fetch_assoc方法遍历查询结果集,并输出每一行的数据。

3.2 插入数据

<?php
$servername = "localhost";
$username = "root";
$password = "password";
$dbname = "mydatabase";

// 创建数据库连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 插入数据
$sql = "INSERT INTO users (name, email) VALUES ('John Doe', 'john.doe@example.com')";

if ($conn->query($sql) === TRUE) {
    echo "新记录插入成功";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

// 关闭连接
$conn->close();
?>

上述代码中,我们首先创建了插入语句$sql,然后通过query方法执行插入操作。如果插入成功,我们输出"新记录插入成功",否则输出错误信息。

结论

通过以上示例,我们了解了如何使用PHP连接数据库并执行查询操作。掌握这些基本的数据库操作技巧,将在实际开发中发挥重要的作用。希望本文能对您有所帮助!


全部评论: 0

    我有话说: