当前位置:首页 > PHP

php实现数据查询

2026-02-14 02:56:12PHP

php实现数据查询

PHP 实现数据查询的方法

使用 MySQLi 扩展

连接到 MySQL 数据库并执行查询:

php实现数据查询

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

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

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

// 执行查询
$sql = "SELECT id, name, email FROM users";
$result = $conn->query($sql);

// 处理结果
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
} else {
    echo "0 结果";
}

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

使用 PDO 扩展

使用 PDO 进行更安全的数据库操作:

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

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $stmt = $conn->prepare("SELECT id, name, email FROM users"); 
    $stmt->execute();

    // 设置结果集为关联数组
    $result = $stmt->setFetchMode(PDO::FETCH_ASSOC); 

    foreach($stmt->fetchAll() as $row) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
} catch(PDOException $e) {
    echo "错误: " . $e->getMessage();
}
$conn = null;
?>

使用预处理语句防止 SQL 注入

<?php
$stmt = $conn->prepare("SELECT * FROM users WHERE email = ?");
$stmt->bind_param("s", $email);

$email = "user@example.com";
$stmt->execute();

$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    // 处理数据
}
?>

使用 PDO 预处理语句

<?php
$stmt = $conn->prepare("SELECT * FROM users WHERE email = :email");
$stmt->bindParam(':email', $email);

$email = "user@example.com";
$stmt->execute();

$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
    // 处理数据
}
?>

使用 LIMIT 分页查询

<?php
$page = isset($_GET['page']) ? (int)$_GET['page'] : 1;
$perPage = 10;
$start = ($page > 1) ? ($page * $perPage) - $perPage : 0;

$sql = "SELECT * FROM posts LIMIT {$start}, {$perPage}";
$result = $conn->query($sql);

while($row = $result->fetch_assoc()) {
    // 显示数据
}
?>

使用 JOIN 查询关联表

<?php
$sql = "SELECT users.name, orders.product, orders.amount 
        FROM users 
        INNER JOIN orders ON users.id = orders.user_id";
$result = $conn->query($sql);

while($row = $result->fetch_assoc()) {
    echo $row["name"]." 购买了 ".$row["product"]." 数量 ".$row["amount"]."<br>";
}
?>

使用 WHERE 条件查询

<?php
$sql = "SELECT * FROM products WHERE price > 50 AND stock > 0";
$result = $conn->query($sql);

while($row = $result->fetch_assoc()) {
    // 显示产品数据
}
?>

使用 ORDER BY 排序

<?php
$sql = "SELECT * FROM products ORDER BY price DESC";
$result = $conn->query($sql);

while($row = $result->fetch_assoc()) {
    // 显示按价格降序排列的产品
}
?>

使用 GROUP BY 分组

<?php
$sql = "SELECT category, COUNT(*) as count FROM products GROUP BY category";
$result = $conn->query($sql);

while($row = $result->fetch_assoc()) {
    echo "分类 ".$row["category"]." 有 ".$row["count"]." 个产品<br>";
}
?>

使用 LIKE 模糊查询

<?php
$search = "%apple%";
$sql = "SELECT * FROM products WHERE name LIKE ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $search);
$stmt->execute();

$result = $stmt->get_result();
while($row = $result->fetch_assoc()) {
    // 显示匹配的产品
}
?>

标签: 数据查询php
分享给朋友:

相关文章

php实现树

php实现树

PHP实现树结构的方法 在PHP中实现树结构通常可以通过递归或迭代的方式完成。以下是几种常见的实现方法: 递归实现树结构 递归是处理树结构的自然方式,尤其适用于具有未知深度的树。 class Tr…

php实现

php实现

PHP 实现的基本方法 PHP 是一种服务器端脚本语言,广泛用于 Web 开发。以下是 PHP 实现的一些常见方法。 变量与数据类型 PHP 变量以 $ 开头,支持多种数据类型: $nam…

php实现文件的下载

php实现文件的下载

PHP 实现文件下载的方法 在 PHP 中实现文件下载功能通常需要设置正确的 HTTP 头信息,并输出文件内容。以下是几种常见的实现方式: 使用 header() 函数强制下载 通过设置 Conte…

php搜索功能实现

php搜索功能实现

实现基本的PHP搜索功能 使用MySQL数据库和PHP实现简单的关键词搜索功能。需要确保数据库中有可供搜索的表和数据。 // 连接数据库 $conn = new mysqli('localhost'…

php 实现单点登录

php 实现单点登录

PHP 实现单点登录的方法 单点登录(SSO)允许用户通过一次登录访问多个相互信任的系统。以下是基于 PHP 的实现方案: 基于共享 Session 的方案 在同一个主域名下的子域名间可以通过共享…

php实现支付宝支付

php实现支付宝支付

支付宝支付集成步骤 准备工作 在开始集成支付宝支付前,确保已注册支付宝开放平台账号并完成企业实名认证。创建应用后获取APPID、应用私钥和支付宝公钥。 配置支付宝SDK 通过Composer安装支付…