require __DIR__ . '/mysql.php';

// 获取页码和查询条件
$page = $_POST['page'] ?? 1; // 默认显示第一页
$name = $_POST['name'] ?? '';

// 开启session
session_start();

// 检查用户是否登录
if (!isset($_SESSION['userInfo'])) {
    echo json_encode(['type' => -1]);
    die;
}

// 计算分页偏移量
$perPage = 4; // 每页显示4条数据
$offset = ($page - 1) * $perPage;

// 构建SQL查询语句
if ($name) {
    $sql = 'SELECT * FROM course WHERE name LIKE '%' . $name . '%' ORDER BY id DESC LIMIT ' . $offset . ',' . $perPage;
} else {
    $sql = 'SELECT * FROM course ORDER BY id DESC LIMIT ' . $offset . ',' . $perPage;
}

// 执行查询
$result = @mysqli_query($link, $sql);
$list = @mysqli_fetch_all($result, MYSQLI_ASSOC);

// 获取数据总数
if ($name) {
    $sql = 'SELECT COUNT(*) AS count FROM course WHERE name LIKE '%' . $name . '%'';
} else {
    $sql = 'SELECT COUNT(*) AS count FROM course';
}
$result = @mysqli_query($link, $sql);
$count = mysqli_fetch_assoc($result)['count'];

// 计算总页数
$totalPages = ceil($count / $perPage);

// 关闭数据库连接
mysqli_close($link);

// 构建返回数据
$data = [
    'list' => $list,
    'page' => $totalPages,
    'type' => 1
];

echo json_encode($data);
die;
PHP分页查询实现 - 每页显示4条数据

原文地址: https://www.cveoy.top/t/topic/f1OY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录