第一页 0 =60x0,按id排序后第0个向后再索引60个,也就是返回0-60这中间的数据,
第二页 60=60x1,返回60-120这中间的数据
第三页 120=60x2,返回120-180这中间的数据
第四页 180=60x3,返回180-240这中间的数据
…
能理解么???
这个是请求例如对vodclass=恐怖类型,vodpage上面对应的[(60*(2-1)] = 60就是表示的是第二页
http://192.168.1.102:2020/typepage.php?vodclass=恐怖&vodpage=60
我写了一个php接口可以参考一下
connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "
SELECT
`vod_id`,`vod_name`,`vod_class`,`vod_author`,`vod_director`,`vod_blurb`,`vod_area`,`vod_lang`,`vod_year`,`vod_score`,FROM_UNIXTIME(`vod_time_add`) as `vod_add_time`,`vod_pic`,`vod_play_url`
FROM `mac_vod`
WHERE `vod_class` like '%$vodclass%'
and `vod_status` = 1
order by `vod_id` limit $vodpage,60
";
$result = $conn->query($sql);
//SELECT * FROM `mac_vod`
$arr = array();
// 输出每行数据
while($row = $result-> fetch_assoc()) {
$count=count($row);//不能在循环语句中,由于每次删除row数组长度都减小
for($i=0;$iclose();
?>
安卓方面的代码应该不用多说吧~‘
就简单说一下,
1.获取这个类型有多少个数据,我打个比方,是1789个
2.1789/60=29.81667 也就是说有30页
3.做一个页码的滑动导航,然后做个循环遍历1至30到这个导航里面
4.添加页码的点击事件,item有默认的点击,调用那个也可以,他是从0开始的,比如你点击了“第一页”,他就有可能是第0项,点击后重新请求数据就可以(记得刷新列表),比如点击的“第5页”,就当他是第4项,就这样请求
http://192.168.1.102:2020/typepage.php?vodclass=恐怖&vodpage=60*4
或者
你直接获取item上的阿拉伯数字,这样计算**(第5页-1)*60*这样返回的就是第5页了
http://192.168.1.102:2020/typepage.php?vodclass=恐怖&vodpage=60(5-1)
当然我只是案例
private LayPage_C page;
public void laylist(String count){
//根据每页多少数据分出多少页
int icount = Integer.parseInt(count);
int pagecount = icount/60;
//pagecount分出页数如30页
//将页数循环遍历到subpage实体类
//可以给message执行
for(int pa=1;pa<=pagecount;pa++)
{
page = new LayPage_C();
page.setPagename("第"+pa+"页");
page.setPagecount(pa*60);//60为1页
layPageCList.add(page);
//Log.d("1111111111", "pagename" + pa+"页");
}
Message msg = new Message();
msg.what = 9;
handler.sendMessage(msg);//用activity中的handler发送消息
//Log.d("1111111111", "pagecountpagecountpagecountpagecount=== " + pagecount);
}
该博客讨论了如何实现分页加载数据,以恐怖电影为例,解释了如何通过PHP接口从数据库中按页获取数据。每页显示60条记录,通过计算页码和每页数量来确定数据范围。此外,还提到了在安卓客户端如何处理分页,包括获取总数据量、计算总页数、创建页码导航和设置点击事件来请求对应页面的数据。
1123

被折叠的 条评论
为什么被折叠?



