PHP7+Layui超简单分页+搜索

PHP7+Layui超简单分页+搜索是一种用于网页开发的技术,它可以帮助开发者快速实现分页和搜索功能。PHP7是一种用于服务器端脚本编程的语言,它可以与Layui框架结合使用,实现网页的美化和交互效果。Layui是一种基于jQuery的前端UI框架,它提供了丰富的组件和样式,可以帮助开发者快速构建美观的网页。

在使用PHP7+Layui超简单分页+搜索技术时,开发者可以通过PHP编写后台代码,实现数据的查询和分页功能。同时,通过Layui框架提供的组件和样式,可以实现网页的美化和交互效果。开发者可以通过搜索功能,快速定位所需的数据,提高用户体验。

演示:

PHP7+Layui超简单分页+搜索

代码:

<?php
try {
    $dsn = "mysql:host=localhost;dbname=数据库名";
    $username = "数据库名";
    $password = "数据库密码";
    $pdo = new PDO($dsn, $username, $password);
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}
 
// 处理搜索关键字
$keyword = isset($_GET['keyword']) ? trim($_GET['keyword']) : '';
 
// 计算总记录数
$sql = "SELECT COUNT(1) FROM `表名`" . ($keyword ? " WHERE `产品名` LIKE '%$keyword%'" : "");
$total = $pdo->query($sql)->fetchColumn();
 
// 每页显示记录数
$pageSize = 10;
 
// 计算总页数
$pageCount = ceil($total/$pageSize);
 
// 当前页码,默认为第一页
$pageNum = isset($_GET['page']) ? $_GET['page'] : 1;
 
// 起始记录数
$start = ($pageNum - 1) * $pageSize;
 
// 查询分页数据
$sql = "SELECT * FROM `表名`" . ($keyword ? " WHERE `产品名` LIKE '%$keyword%'" : "") . " LIMIT {$start},{$pageSize}";
$stmt = $pdo->query($sql);
$list = $stmt->fetchAll(PDO::FETCH_ASSOC);
?>
 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>PHP+Layui分页+搜索</title>
    <link rel="stylesheet" >
</head>
<body>
<div class="layui-container">
    <br>
    <form class="layui-form" action="" method="get">
        <div class="layui-inline">
            <input type="text" name="keyword" placeholder="请输入产品名" value="<?php echo htmlspecialchars($keyword); ?>" class="layui-input">
        </div>
        <button class="layui-btn" lay-submit lay-filter="search"><i class="layui-icon layui-icon-search"></i></button>
        <a href="?page=1" class="layui-btn layui-btn-primary">重置</a>
    </form>
    <br>
    <table class="layui-table">
        <thead>
        <tr>
            <th>ID</th>
            <th>产品名</th>
            <th>产品库存</th>
            <th>操作</th>
        </tr>
        </thead>
        <tbody>
        <?php foreach($list as $vo){ ?>
            <tr>
                <td><?php echo $vo['id']; ?></td>
                <td><?php echo $vo['产品名']; ?></td>
                <td><?php echo $vo['产品库存']; ?></td>
                <td><a href="delete.php?id=<?php echo $vo['id']; ?>">删除</a></td>
            </tr>
        <?php } ?>
        </tbody>
    </table>
    <div id="demo"></div>
</div>
<script src="https://cdn.staticfile.org/layui/2.5.6/layui.min.js"></script>
<script>
    layui.use(['laypage', 'form'], function(){
        var laypage = layui.laypage;
        var form = layui.form;
 
        // 渲染分页导航栏
        laypage.render({
            elem: 'demo',
            count: <?php echo $total; ?>,
            limit: <?php echo $pageSize; ?>,
            curr: <?php echo $pageNum; ?>,
            jump: function(obj, first){
                if(!first){
                    // 点击页码时,重新加载页面
                    window.location.href = '?page=' + obj.curr + '&keyword=<?php echo urlencode($keyword); ?>';
                }
            }
        });
 
        // 监听搜索表单提交事件
        form.on('submit(search)', function(data){
            window.location.href = '?keyword=' + data.field.keyword;
            return false;
        });
    });
</script>
</body>
</html>
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

给TA打赏
共{{data.count}}人
人已打赏
php后端

WordPress防止刷关键词代码

2023-4-28 16:15:43

php后端

文章自动内链和自动添加标签

2023-5-6 20:27:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索