欢迎访问宙启技术站
智能推送

PHP分页函数:使用mysqli和PDO扩展实现

发布时间:2023-06-29 22:13:31

PHP分页函数是用于将数据分页显示,以提高系统性能和用户体验的技术。在本文中,我们将介绍如何使用mysqli和PDO扩展来实现PHP分页函数。

首先,我们需要创建一个数据库连接。使用mysqli扩展,可以使用以下代码创建一个数据库连接:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

使用PDO扩展,可以使用以下代码创建一个数据库连接:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
}
catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

接下来,我们需要编写一个函数来执行分页。以下是一个使用mysqli扩展的示例分页函数:

function getPerPageData($conn, $table, $pageNum, $perPage) {
    $start = ($pageNum - 1) * $perPage;
    $query = "SELECT * FROM $table LIMIT $start, $perPage";
    $result = $conn->query($query);

    if ($result->num_rows > 0) {
        while($row = $result->fetch_assoc()) {
            // 处理每一行数据
            echo $row["column1"]. " - " . $row["column2"]. "<br>";
        }
    } else {
        echo "0 results";
    }
}

以下是一个使用PDO扩展的示例分页函数:

function getPerPageData($conn, $table, $pageNum, $perPage) {
    $start = ($pageNum - 1) * $perPage;
    $query = "SELECT * FROM $table LIMIT :start, :perPage";
    $stmt = $conn->prepare($query);
    $stmt->bindParam(':start', $start, PDO::PARAM_INT);
    $stmt->bindParam(':perPage', $perPage, PDO::PARAM_INT);
    $stmt->execute();

    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);

    if ($stmt->rowCount() > 0) {
        foreach ($result as $row) {
            // 处理每一行数据
            echo $row["column1"]. " - " . $row["column2"]. "<br>";
        }
    } else {
        echo "0 results";
    }
}

最后,我们可以调用分页函数来显示分页数据。以下是一个示例调用函数:

$table = "myTable";
$pageNum = 1; // 当前页码
$perPage = 10; // 每页显示的记录数

getPerPageData($conn, $table, $pageNum, $perPage);

在上面的示例中,我们将要分页的表名传递给了分页函数,并指定了当前页码和每页显示的记录数。然后,将分页函数调用显示在页面上。

这就是使用mysqli和PDO扩展实现PHP分页函数的基本步骤。你可以根据自己的需求进行修改和扩展。