分页|数据|数据库
详细介绍:
记得以前总觉得数据库分页麻烦,而网上的一些分页类又总感觉太繁琐,于是这个类就诞生了。:D
当初写这个类的时候就是想把分页简单化。您在使用这个类的时候只要把记录数,页数大小和要传递的变量传过来,剩下的一切都会自动搞定。有什么问题请到论坛提出。
/**
* 一个用于Mysql数据库的分页类
*
* @author Avenger
* @version 1.0
* @lastupdate 2003-04-08 11:11:33
*
*
* 使用实例:
* $p = new show_page; //建立新对像
* $p->file="ttt.php"; //设置文件名,默认为当前页
* $p->pvar="pagecount"; //设置页面传递的参数,默认为p
* $p->setvar(array("a" => '1', "b" => '2')); //设置要传递的参数,要注意的是此函数必须要在 set 前使用,否则变量传不过去
* $p->set(20,2000,1); //设置相关参数,共三个,分别为'页面大小'、'总记录数'、'当前页(如果为空则自动读取GET变量)'
* $p->output(0); //输出,为0时直接输出,否则返回一个字符串
* echo $p->limit(); //输出Limit子句。在sql语句中用法为 "SELECT * FROM TABLE LIMIT {$p->limit()}";
*
*/
class show_page {
/**
* 页面输出结果
*
* @var string
*/
var $output;
/**
* 使用该类的文件,默认为 PHP_SELF
*
* @var string
*/
var $file;
/**
* 页数传递变量,默认为 'p'
*
* @var string
*/
var $pvar = "p";
/**
* 页面大小
*
* @var integer
*/
var $psize;
/**
* 当前页面
*
* @var ingeger
*/
var $curr;
/**
* 要传递的变量数组
*
* @var array
*/
var $varstr;
/**
* 总页数
*
* @var integer
*/
var $tpage;
/**
* 分页设置
*
* @access public
* @param int $pagesize 页面大小
* @param int $total 总记录数
* @param int $current 当前页数,默认会自动读取
* @return void
*/
function set($pagesize=20,$total,$current=false) {
global $HTTP_SERVER_VARS,$HTTP_GET_VARS;
$this->tpage = ceil($total/$pagesize);
if (!$current) {$current = $HTTP_GET_VARS[$this->pvar];}
if ($current>$this->tpage) {$current = $this->tpage;}
if ($current
$this->curr = $current;
$this->psize = $pagesize;
if (!$this->file) {$this->file = $HTTP_SERVER_VARS['PHP_SELF'];}
if ($this->tpage > 1) {
if ($current>10) {
$this->output.='pvar.'='.($current-10).($this->varstr).' title="前十页"> ';
}
if ($current>1) {
$this->output.='pvar.'='.($current-1).($this->varstr).' title="前一页"> ';
}
$start = Floor($current/10)*10;
$end = $start+9;
if ($start if ($end>$this->tpage) {$end=$this->tpage;}
for ($i=$start; $i if ($current==$i) {
$this->output.=''.$i.'< ;/フォント> '; //输出当前页数
} else {
$this->output.='['.$i.'] '; //出页数
}
}
if ($currenttpage) {
$this->output.='pvar.'='.($current+1).($this->varstr).' title="下一页">>> ';
}
if ($this->tpage>10 && ($this->tpage-$current)>=10 ) {
$this->output.='< ;a href='.$this->file.'?'.$this->pvar.'='.($current+10).($this->varstr).' title="下十页">>>>';
}
}
}
/**
* 渡される変数の設定
*
* @access public
* @param array $data 配列で表される渡される変数。上記の例を参照
* @return void
*/
function setvar($data) {
foreach ($data as $k=>$v) {
$this->varstr.='&'.$k.'='.urlencode($ v);
}
}
/**
* ページング結果の出力
*
* @access public
* @param bool $return が true の場合は文字列を返し、それ以外の場合は直接出力され、デフォルトでは直接出力されます
* @戻り文字列
*/
関数出力($return = false) {
if ($return) {
return $this->output;
} else {
echo $this->output;
}
}
/**
* Limit ステートメントを生成
*
* @access public
* @return string
*/
関数limit() {
return (($this->curr-1)*$this->psize).','.$this->psize;
}
} //クラスを終了
?>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ホットトピック









