thinkphp 簡單分頁

2021-06-09 18:56:49 字數 2799 閱讀 1079

1:首先,我們得建立乙個用於分頁測試的資料庫 test。sql**如下。

[php]

create table `test` (

`id` int(10) unsigned not null auto_increment,

`name` char(100) not null,

`content` varchar(300) not null,

primary key  (`id`)

) engine=myisam  default charset=utf8 auto_increment=27 ;

insert into `test` (`id`, `name`, `content`) values

(19, '123', '123'),

(20, '1231', '123123123'),

(21, '123123', '123123123'),

(26, '24', '123123'),

(25, '321123', '321123'),

(24, 'age', 'age'),

(23, '123123', '123123'),

(22, '213', '123');

[/php]

2:接著,我們得新建乙個thinkphp專案。新版tp已經內建了專案自動生成目錄功能。

在htdocs(也就是你的**根目錄)下新建乙個test資料夾,把thinkphp核心資料夾放進test根目錄,並在test根目錄新建檔案index.php。

開啟/test/test/conf/目錄,新建「config.php」 ,配置好你的資料庫連線。

[php]

<?php

return array(

'db_type'=>'mysql',

'db_host'=>'localhost',

'db_name'=>'test',

'db_user'=>'root',

'db_pwd'=>'',

'db_port'=>'3306',

);?>

[/php]

如果你想開啟除錯模式,請在陣列中加入「debug_mode」=>true.

3:基本頁面輸入與輸出的實現。

(1)開啟/test/test/lib/action/indexaction.class.php,會發現以下**

[php]

<?php

// 本類由系統自動生成,僅供測試用途

class indexaction extends action

} ?>

[/php]

由系統自動生成的indexaction類中的index()函式是預設的首頁呼叫函式。你可以使用http://localhost/test/index.php或者http://localhost/test/index.php/index來訪問他

(2)我們暫時不管他。首先我們需要乙個表單提交的頁面。開啟"/test/test/tpl/default/index/",新建乙個檔案add.html.

[php]

[/php]

這裡簡單說一下模板和action之間的關係。每乙個action,對應的模板是與之名字相同的html檔案。例如index類下的index(),對應default/index/index.html,而add.html,則顯然對應的是index類下的add()。

我們甚至可以在只有add.html而沒有相應的add()動作情況下,用訪問add()的形式(http://localhost/test/index.php/index/add)來訪問add.html模板。add.html模板下的佔位符會被替換成相應的資料。效果如下。

(3)從form的"action=__url__/insert"中可以看出,進行表單處理的動作是/test/index.php/index/insert,所以我們得新增insert動作來處理表單提交資料。在此之前,我們還有一件重要的事情要做,那就是新增model檔案。通過model檔案的建立,我們將能在insert動作中使用便捷的方法來運算元據庫了

開啟/test/test/lib/model/資料夾,新建檔案testmodel.class.php。開啟他,輸入並儲存以下**

[php]

<?php

class testmodel extends model

?>

[/php].

簡單的說,這是activerecord實現的基本檔案。命名規則是你資料庫中的表後面加model.例如我們將要使用到的表是test,我的檔案命名必須是testmodel.class.php,而檔案下的類命名必須是testmodel.

。接著,我們回到indexaction.class.php檔案,刪除原來的**,加入如下**。

[php]

class indexaction extends actionelse

}       

}[/php]

(4)接下來,我們需要在indexaction類中增加乙個首頁預設顯示動作index()來呼叫表單資料。

[php]

public function index()

[/php]

我們該設定乙個模板了。在/test/test/tpl/default/index/下新建index.html(因為預設對應了index().所以程式中可以直接assign.而不用去指定模板檔案。當然,這是可以配置的。)

[php]

填寫//分頁顯示,這一行

//資料顯示。下面的引數很快會再進行詳解。它很好理解。

姓名:內容:

[/php]

儲存他。接著輸入 http://localhost/test/

Thinkphp 實現簡單資料分頁

thinkphp框架中自帶分頁類page.class.php,在thinkphp library think目錄下面 在控制器中先導入這個分頁類 use think page 匯入分頁類後台 n m tablename condition id uid count n where condition...

ThinkPHP分頁例項

控制器中的 db m cost where 查詢條件 count db where where count pagecount 20 page new think page count pagecount page parameter row 此處的row是陣列,為了傳遞查詢條件 page setc...

ThinkPHP分頁例項

很多人初學thinkphp時,不太熟悉thinkphp的分頁使用方法,現在將自己整理的分頁方法分享下,有需要的朋友可以看看。控制器中的 db m cost where 查詢條件 count db where where count pagecount 20 page new think page c...