ホームページ  >  記事  >  バックエンド開発  >  PHP+MYSQL ページターナー

PHP+MYSQL ページターナー

WBOY
WBOYオリジナル
2016-07-25 09:11:121261ブラウズ
このプログラムでは、新しいクラス FENYE がクラス DBSQL を継承しているため、新しいクラスのデストラクタで親クラスのデストラクタを呼び出してデータベースに接続し、グローバル変数を定義するファイル config.inc.php を呼び出します。も含まれています。
  1. /*
  2. このページング クラスには 3 つのクラス関数があります。最初の関数の機能は、主にレコード セット内のレコードの合計数を計算することです。ページが表示され、これらの結果が次の関数で使用できるようにメンバー変数に割り当てられます。 3 番目の関数 url は、レコード セットのページング表示を実装するコードです。ここでは、ページング アルゴリズムで主に次の SQL ステートメントを使用します。 select * from table_name limit $start, $pageper; $start はクエリの開始位置、$pageper はクエリの開始位置です。各ページに表示されます。
  3. */
  4. include_once("db.inc.php");
  5. class FENYE extends DBSQL{
  6. public $count_1 //結果レコードセットの総数を返す
  7. private $pageper=3;ページに表示されるレコードセットの数
  8. public $pc; //表示されるページの総数
  9. private $sql="select * from students";
  10. public $offset; //現在のページ番号
  11. public function __contract; (){
  12. parent::__contract(); //親クラスのメソッドを呼び出してデータベースに接続します
  13. }
  14. public function caculate($sql=""){
  15. $sql=$this- >sql;
  16. $result=mysql_query($sql) or die (mysql_error());
  17. $count=mysql_num_rows($result);
  18. $this->count_1=$count;
  19. $pc= intval($count /$this->pageper)+1;
  20. $this->pc=$pc;
  21. }
  22. public function url($targetUrl){
  23. $pagesize=$this-> pageper ; // 各ページにレコードを表示します
  24. $page=isset($_GET['page'])?intval($_GET['page']):1;// 現在のページを取得します
  25. $sql=" select * from students limit " .($page-1)*$pagesize.",$pagesize";
  26. //echo $sql ;exit;
  27. $results=mysql_query($sql) or die (mysql_error()) ;
  28. while ($ row = mysql_fetch_array($results)){
  29. for($i=0;$i
  30. echo $row[$i]."   ;  " ;
  31. echo "
    ";
  32. }
  33. $offset=($page-1)*$pagesize;
  34. $prepage=$page-1; //前のページ
  35. $nextpage=$ page+1; //次のページ
  36. $pagenav="合計 ".$this->count_1." レコード 各ページには $pagesize のレコード、合計 ".$this->pc." が表示されます。 " ページ、現在のページ $page";
  37. if($page==1){
  38. $strpage="[最初のページ][前のページ] [ 次のページ][最後のページ]";
  39. }
  40. if($page>1&&$page< ; =$this->pc){
  41. $strpage="[最初のページ]【前のページ】【次のページ】[最後のページ]";
  42. }
  43. if($page==$this->pc){
  44. $strpage="【最初のページ】【前のページ】【次のページ】【最後のページ】";
  45. }
  46. $strpage="$pagenav
    $strpage";
  47. echo $strpage;
  48. }
  49. }
  50. /*
  51. 小さな関数の注釈:
  52. intval: 整数値を取得します。
  53. count: 配列内の要素の数を計算します。
  54. expression_1?式_2:式_3;: 最初の式が値の場合、この関数の戻り値は 2 番目の式の値になり、それ以外の場合、関数の戻り値は 3 番目の式の値になります。
  55. プログラムコードの安全性を確保するため、クラスのメンバ変数の型をprivateに設定してください。 */
  56. ?>
コードをコピー

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