当前位置:Gxlcms > 数据库问题 > PHP无限循环取MySQL中的数据。

PHP无限循环取MySQL中的数据。

时间:2021-07-01 10:21:17 帮助过:24人阅读

public function get_data($limit){ 2 $sql="select * from ((select id,name from `mytable` limit {$limit},10) union all (select id,name from `mytable` limit 0,10)) as test limit 0,10"; 3    return $this->query($sql); 4 }

  上述sql语句通过mysql的union all方法,把两个集合拼接到一起,并取前十条数据。

1  public function getCount(){//获取数据的条数
2         $sql="select count(id) as t from `mytable`";
3         return $this->query($sql);
4  }

  下一步在控制器中获取数据,并给ajax提供数据接口。

 1  //测试数据库无限循环取数据
 2      public function getInfiniteData(){
 3         //用户点击数
 4         $page = $_GET[‘click‘];
 5      //每次展示条数
 6         $pagesize = 10;
 7      //获取总条数
 8         $total = $this->Mydemo->get_count();
 9         $t = $total[0][0][‘t‘];
10      //算出每次点击的其起始位置
11         $limit = (($page - 1)*$pagesize)%$t;
12 
13         $data = $this->Mydemo->get_data($limit);
14 
15         if (!empty($data)) {
16             //转换为二维数组
17             $list = [];
18             foreach ($data as $key => $v) {
19                 $list[$key] = $data[$key][0];
20             }
21 
22             $info[‘msg‘] = $list;
23             $info[‘code‘] = ‘001‘;
24         }else{
25             $info[‘code‘] = ‘002‘;
26             $info[‘msg‘] = ‘暂无数据‘;
27         }
28         echo json_encode($info,JSON_UNESCAPED_UNICODE);die;
29 
30     }

 JS代码我就不贴了。

  

 

PHP无限循环取MySQL中的数据。

标签:this   接口   code   cti   数据   数据接口   补充   turn   测试数据   

人气教程排行