ホームページ >php教程 >php手册 >最も強力な PHP 一般ページング クラスをリリース

最も強力な PHP 一般ページング クラスをリリース

WBOY
WBOYオリジナル
2016-06-21 08:58:55980ブラウズ

ページネーション

Asp.net を学習したことがある方は、datalist と呼ばれる非常に強力なページング関数があることをご存知のはずです。このクラスは、この関数の一部をシミュレートするものであるため、あえて「強力」という言葉を使用します。一般的なページ クラスと異なり、このクラスは真に「ユニバーサル」です。
それでは早速、使い方をご紹介していきます。
1. まず、テスト用のテーブルを作成します。
CREATE TABLE `test` (
`aa` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`bb` VARCHAR(50) NOT NULL,
` cc` VARCHAR(50) NOT NULL,
`tt` INT DEFAULT '0' NOT NULL
); 2. テンプレート ファイルを作成し、test.htm
{dede :ページ pagesize=15/}








{dede : datalist}






{/dede}

{dede:pagelist listsize=3/}


aa bb cc tt
[フィールド:aa/] [フィールド: bb /] [field:cc/] [field:tt function='date("Y-m-d H-i-s","@me " )'/]

3. このクラスを呼び出すコードを記述します
データベースの接続情報は config_base.php ファイルに設定されます
showtable.php
require("inc_datalist.php");
$dlist = new DataList() ;
$dlist->Init();
$dlist->SetTemplet("./test.htm");
$dlist->SetSource("select * from ttt");
$liststring = $dlist->Display();
$dlist->Close();
?>
サブの作成はとても簡単で完成です。 -file. ページとロジックの分離が実現
GET 文字列を追加してクエリに渡したい場合はどうすればよいですか?
簡単
追加されたクエリ文字列がキーワードの場合
require("inc_datalist.php");
if(!isset($keyword)) $keyword="";
$dlist = new DataList();
$dlist->Init();
$dlist->SetParameter("keyword",$keyword);
$dlist->SetTemplet ("./test.htm");
$dlist->SetSource("select * from ttt where bb like '%$keyword%'");
$liststring = $dlist->Display( );
$dlist->Close();
?>
他に解決できないことはありますか?
フィールドがブール値の場合、さまざまな状況に応じて異なるコンテンツを出力したいと考えています。実際、それを実現するのは難しくありません。
Dede テンプレート エンジンはカスタム関数の使用をサポートしています。
require("inc_datalist .php");
if(!isset($keyword)) $keyword="";
function GetMyName($mname)
{
if($mname= ="dede") return "My Name";
else return $mname;
}
$dlist = new DataList();
$dlist->Init();
$ dlist->SetParameter( "keyword",$keyword);
$dlist->SetTemplet("./test.htm");
$dlist->SetSource("select * from ttt where bb like '%$keyword% '");
$liststring = $dlist->Display();
$dlist->Close();
?>
あなたはしませんプログラム内で何かをする必要がある場合は、それを行う必要があります。返される値が関数によって返される値。

これはほぼ完璧です。唯一のことは、ページ分割されたリストへのリンクが修正されていることですが、改善することができます。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。