在Ecmall的二次开发中,分页是必不可少的。这个系统已经自带了分页功能,下面来看看如何使用这个分页。
下面是一个自定义的类,用于查看订单的详细情况。关键在于get_order_data()这个方法,分页的使用也在这个方法的内部了。应该有的注释都有了,应该会比较容易懂,我不就多说了。
<?php define('NUM_PER_PAGE', 15); // 每页显示数量 class NowaMagicApp extends MallbaseApp { public function index() { /* 分页信息 */ $page = $this->_get_page(NUM_PER_PAGE); $page['item_count'] = $stats['total_count']; $this->_format_page($page); $this->assign('page_info', $page); $this->display('gorder.index.html'); } /* 订单记录 */ function orderslog() { $goods_id = empty($_GET['id']) ? 0 : intval($_GET['id']); if (!$goods_id) { $this->show_warning('Hacking Attempt'); return; } $data = $this -> get_order_data($goods_id); if ($data === false) { return; } $this->assign('order', $data); $this->display('gorder.index.html'); } function get_order_data($goods_id) { //clean_cache(); $cache_server =& cache_server(); //print_r($cache_server); $key = 'order_' . $goods_id; //$key = $this->_get_cache_id(); $r = $cache_server->get($key); $cached = true; $db = &db(); $sql = "select count(*) from shop_order a, shop_order_extm b, shop_order_goods c where a.order_id = b.order_id and b.order_id = c.order_id and c.goods_id = '".$goods_id."' and a.status != '11' and a.status != '0' and a.status != '20' order by a.add_time desc "; //echo $sql; $num = $db -> getone($sql); //求出总记录数 $page = $this->_get_page(NUM_PER_PAGE); //每页显示的条数,默认是10条 $page['item_count'] = $num; // 返回一个数组$page,$page['limit']=0,10 $this->_format_page($page); //格式化分页 $sql2 = "select a.order_id, a.buyer_name, a.add_time, a.status, b.phone_tel, b.phone_mob, b.consignee, c.price, c.quantity, c.goods_id from shop_order a, shop_order_extm b, shop_order_goods c where a.order_id = b.order_id and b.order_id = c.order_id and c.goods_id = '".$goods_id."' and a.status != '11' and a.status != '0' and a.status != '20' order by a.add_time desc limit ".$page['limit']; $result = $db -> query($sql2); $this -> assign('page_info',$page); //向模板页传递页数 $this -> assign('que',$sql2); //向模板页传递查询结果 //$r = array(); while($myrow = $db -> fetch_array($result)) { $r[] = $myrow; } $cache_server->set($key, $r, 1); return $r; } } ?>
简化如下:
Define("LIMIT",10); $goods_mod = & db('test');//构建实体模型(操作表) $count = 'select count(id) from test'; $num = $goods_mod -> getone($count);//求出总记录数 $page = $this->_get_page(LIMIT);//每页显示的条数,默认是10条 $page['item_count'] = $num;// 返回一个数组$page,$page['limit']=0,10 $this->_format_page($page);//格式化分页 $sql = 'select id,title,content from test order by id desc limit '.$page['limit']; $que = $goods_mod -> getAll($sql);//查询记录 $this -> assign('page_info',$page); //向模板页传递页数 $this -> assign('que',$que); //向模板页传递查询结果
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
1 몇 주 전ByDDD
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경

뜨거운 주제
Cakephp 튜토리얼
1374
52


Win11 활성화 키 영구
40
19

