入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

yii2.0 使用分页封装类 分页

创建时间:2016-09-23 投稿人: 浏览次数:108

第一步:连接收据库,原生代码封装类连的数据库,因为是框架,不能是框架的数据库

第二步:封装的类放在web下面,入口文件,可以自定义;命名 使用封装类
第三步:注意文件名的路径,跳转上一页下一页的路径   下面可以对比看到
<span style="color:#FF0000;">类名 Db.class.php  连接数据库</span>
<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2016/9/22
 * Time: 23:45
 */
header("content-type:text/html;charset=utf8");
class Db{
    public $host="127.0.0.1";
    public $host_name="root";
    public $host_pwd="root";
    public $db_name="yii";

    function connect(){
        mysql_connect($this->host,$this->host_name,$this->host_pwd)or die("连接失败");
        mysql_select_db($this->db_name)or die("选择失败");
        mysql_query("set names utf8");

    }
}
<span style="color:#FF0000;">分页类名</span> page.class.php
<?php
header("content-type:text/html;charset=utf8");
class page{
	/*分页方法
	*@param string $table 表名
	*@param int $length 一页几个
	*@param $file_name文件名
	*/
	function show($table,$length,$where,$file_name){
		$sql="select count(*) from $table where $where";
		//return $sql;die;
        $re=mysql_query($sql);
        $arr=mysql_fetch_assoc($re);
		//print_r($arr);
		//总记录数
		$num=$arr["count(*)"];
		//每页显示的条数
		$length=4;
		//总页数
		$pages=ceil($num/$length);
		//当前页面
		$page=isset($_GET["page"])?$_GET["page"]:1;
		//上一页
		$last=$page<=1?1:$page-1;
		//下一页
		$next=$page>=$pages?$pages:$page+1;
		//尾页
		$offset=($page-1)*$length;
		$sql1="select * from $table where $where limit $offset,$length";
		//echo $sql1;
		//执行取出数据
		$re1=mysql_query($sql1);
		//如果有数据 取出数据 否则返回false;
		if(mysql_num_rows($re1)>0){
			while($arr1=mysql_fetch_assoc($re1)){
				//2维数组
				$new_arr[]=$arr1;
				}//print_r($new_arr);

		$str="<a href="$file_name.php?r=lianxi/list&page=1">首页</a>
			  <a href="$file_name.php?r=lianxi/list&page=$last">上一页</a>
			  <a href="$file_name.php?r=lianxi/list&page=$next">下一页</a>
			  <a href="$file_name.php?r=lianxi/list&page=$pages">尾页</a>";
			  /*<a href="$file_name.php?page=1">首页</a>
			  <a href="$file_name.php?page=$last">上一页</a>
			  <a href="$file_name.php?page=$next">下一页</a>
			  <a href="$file_name.php?page=$pages">尾页</a>";
			   * echo $str;die;
			   */
			  $data["data"]=$new_arr;
			  $data["str"]=$str;
			  //print_r($data);die;
			  return $data;
		}else{
			return false;
		}
	
	}
}
?>
<span style="color:#FF0000;">命名   控制器</span>
use page;<span style="color:#FF0000;">//类名***</span>
use Db;/<span style="color:#FF0000;">/注意</span>
    public function actionList(){
        require("page.class.php");//分页
        require("Db.class.php");//数据库
        $db=new Db();//实例化
        $db->connect();
        $page=new page();
        $arr1= $page->show("shang",4,1,"index");//传来的参数 表名 页 条件1 文件名
        $arr=$arr1["data"];
        $str=$arr1["str"];
        //$arr=Shang::find()->asArray()->all();
         return $this->render("list",["list"=>$arr,"str"=>$str]);
    }<span style="color:#FF0000;">
视图层</span>
 <?php foreach($list as $k=>$v){?>
    <tr>
    <td><?php echo $v["goods"]?></td>
     <td><?php echo $v["price"]?></td>
    </tr>
<?php}?> 
<?php echo $str ?>



	







声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。