How to paginate query results for Infinite Scroll?(如何为无限滚动的查询结果分页?)
问题描述
我有一个使用 2 个 PHP 文件和一个 MySql 数据库的示例页面,我正在尝试在其上使用 jQuery 无限滚动.如何从数据库加载下一组数据?例如,我的图片数据库中有 100 条记录,我想显示 20 条,然后滚动显示下 20 条.
I have a sample page that uses 2 PHP files and a MySql database, and I'm trying to use jQuery infinite scroll on it. How can I load the next group of data from database? For example, I have 100 records in my pictures database, and I want to show 20, and then the next 20 after some scrolling.
这是我目前的核心:
index.php
<?php
ob_start();
require_once('images.html');
ob_end_flush();
?>
images.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title> trata tata</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<!--[if lt IE 9]><script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
<link rel="stylesheet" href="./css/style.css" />
<!-- scripts at bottom of page -->
</head>
<body class="demos ">
<nav id="site-nav">
<h1><a href="./index.html">ole tu jest HOME</a></h1>
<h2>Menu 1</h2>
<ul class="docs-list">
<li><a href="../docs/intro.html">11111111</a>
</ul>
<h2>Menu 2</h2>
<ul class="demos-list">
<li><a href="../demos/basic-single-column.html">222222222</a>
<li class="current"><a href="#content">3333333333</a></li>
</ul>
</nav> <!-- #site-nav -->
<section id="content">
<h1>cos tam ....</h1>
<div id="container" class="clearfix">
<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("test") or die(mysql_error());
// Retrieve all the data from the "test " table
$result = mysql_query("SELECT * FROM foto")
or die(mysql_error());
// store the records of the "TABLENAME" table into $row array and loop through
while ( $row = mysql_fetch_array( $result, MYSQL_ASSOC ) ) {
// Print out the contents of the entry
//echo "details: ".$row['id'];
echo '<div class="box photo col3">';
echo "<img src="".$row['src']."" alt="wwwwww" />";
echo '</div>';
}
?>
</div> <!-- #container -->
<script src="./js/jquery-1.7.1.min.js"></script>
<script src="./jquery.masonry.min.js"></script>
<script>
$(function(){
var $container = $('#container');
$container.imagesLoaded( function(){
$container.masonry({
itemSelector : '.box'
});
});
});
</script>
<footer id="site-footer">
szaki <a href="http://desandro.com">sdfsdfdsfsdf</a>
</footer>
</section> <!-- #content -->
</body>
</html>
<!-- #container --><script src="./js/jquery-1.7.1.min.js"></script><script src="./jquery.masonry.min.js"></script><脚本>$(函数(){var $container = $('#container');$container.imagesLoaded( 函数(){$container.masonry({itemSelector : '.box'});});});<footer id="site-footer">szaki <a href="http://desandro.com">sdfsdfdsfsdf</a></页脚></节><!-- #content -->
推荐答案
您需要将 LIMIT
添加到您的查询中.MySQL 手册中的示例:
SELECT * FROM tbl LIMIT 5,10; # Retrieve rows 6-15
Here, 5
is the starting offset, and 10
is the amount of rows you want to fetch.
这里,5
是起始偏移量,10
是您要获取的行数.
For the client-side you'll need the infinite scroll jQuery plugin.
这篇关于如何为无限滚动的查询结果分页?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何为无限滚动的查询结果分页?
基础教程推荐
- HTTP 与 FTP 上传 2021-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- PHP 守护进程/worker 环境 2022-01-01
- 使用 PDO 转义列名 2021-01-01