<table cellspacing="0" cellpadding="0"><tr><td class="t_f" id="postmessage_32834"> <div class="blockcode"> <div id="code_UQQ"><ol> <li> <li><?php<li>/**<li>クエリをページ分割するクラス<li>@link http://bbs.it-home.org<li>*/<li>class paging<li>{<li> private $pageSize; //各ページに表示される項目の数。デフォルトは 10 項目です。 <li> private $totlePage; // 合計レコード数は何ですか? private $dbConnection; // 現在表示されているページ数<li> private $show;デフォルトのメソッド show1() を使用するメソッドです。 <li> /**<li> コンストラクター、データベース接続を確立します<li> @$pageSizeP 各ページに表示される項目のデフォルト数は 10 です。 <li> @$show ナビゲーションを表示するために使用するメソッド。デフォルトのメソッドは show1() ホームページ | 次のページ | 最後のページ を使用します。 <li>*/<li> public function _construct($pageSizeP=10,$show="show1")<li> {<li> $this->dbConnection = @mysql_connect("localhost","ユーザー名","パスワード") );</li> <li> if($this->dbConnection)</li> <li> {</li> <li> die("");</li> <li> }</li> <li> mysql_select_db($this->dbConnection,"databaseName");</li> <li> $this->show = $show;</li> <li> $this->pageSize = $pageSizeP;</li> <li> }</li> <li> /**</li> <li> デストラクター、データベース接続を閉じます。 </li> <li>*/</li> <li> public function _destruct()</li> <li> {</li> <li> @mysql_close($this->dbConnection);</li> <li> }</li> <li> /**</li> <li> データベースにクエリを実行し、データベース内のレコード数を表示します。 </li> <li> @$sql データベースにクエリを実行する SQL ステートメント。 </li> <li> @$charset はデータベースで使用される文字セットをクエリします。デフォルトは UTF-8 です。 </li> <li> @return データベースクエリの結果を配列として保存して返します。項目数は不定です。 </li> <li> */</li> <li> パブリック関数 querySQL($sql,$charset="UTF-8")</li> <li> {</li> <li> mysql_query("SET NAMES ".$charset);</li> <li> $rs = @mysql_query($sql);</li> <li> if(!$rs )</li> <li> {</li> <li> die("");</li> <li> }</li> <li> $num = @mysql_num_rows($rs);</li> <li> $this->totlePage= ceil($num/$this->pageSize);</li> <li> $this-> nowPageIndex = (isset($_POST['page']) || $_POST['page'] >= 1):$_POST['page']?1;</li> <li> if($this->nowPageIndex >$ this->totlePage)</li> <li> {</li> <li> $this->nowPageIndex = $this->totlePage;</li> <li> }</li> <li> $start = ($this->nowPageIndex - 1)*$this->pageSize;</li> <li> mysql_free_result( $rs);</li> <li> $sql .= "LIMIT $start,$this->pageSize";</li> <li> $rs = @mysql_query($sql);</li> <li> if(!$rs)</li> <li> {</li> <li> die("");</li> <li> }</li> <li> $rows = array();</li> <li> while($row = @mysql_fetch_row($rs))</li> <li> {</li> <li> $rows[] = $row;</li> <li> }</li> <li> @mysql_free_result($rs);</li> <li> return $rows;</li> <li> } </li> <li> /**</li> <li> ナビゲーション蘭を表示します。 </li> <li> @$arg ナビゲーションを表示する関数を呼び出すためのパラメータ。 </li> <li> $img1 はナビゲーション接続の画像を保存する配列です。 show1() を呼び出すときに使用されます。 </li> <li> $size は、ナビゲーション ブループリントの 1 行に表示されるページ数です。 show2() を呼び出すときに使用されます。 </li> <li>*/</li> <li> public function show($arg)</li> <li> {</li> <li> $func = $this->show;</li> <li> $this->$func($arg);</li> <li> }</li> <li> /**</li> <li>ナビゲーションは、「ホームページ」→「次のページ」→「最後のページ」の順に表示されます。 </li> <li> @$img1 前のページ | 次のページ | 最後のページに対応する画像パス配列。</li> <li> */</li> <li> プライベート関数 show1($img1 = NULL)</li> <li> { </li> <li> $url = $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];</li> <li> $str = "<table></li> <li> < ;tr><td>現在前$this->nowPageIndex页/共$this->totlePage页</td><td><a herf='";<li> $str .= ereg_replace("page =/.&","page=1&",$url);<li> $str .= "'>";</li> <li> if(isset($img) || $img != NULL)</li> <li> {</li> <li> $str .= "<img src=$img[0] alt=首页></a></td><td><a href=";<li> $page1 = $this->nowPageIndex - 1; </li> <li> $str .= ereg_replace("page=/.&","page=$page1&",$url);</li> <li> $str .= "><img src=$img[1] alt=上一页> ;</a></td><td><a href=";<li> $page1 = $this->nowPageIndex + 1;</li> <li> $str .= ereg_replace("page=/.&", "page=$page1&",$url);</li> <li> $str .= "><img src=$img[2] alt=下一页></a></td><td> <a href=";<li> $page1 = $this->totlePage ;</li> <li> $str .= ereg_replace("page=/.&","page=$page1&",$url);</li> <li> $str .= " ><img src=$img[3] alt=末页></a></td><td></tr><table>";</li> <li> }</li> <li> else</li> <li> {</li> <li> $str .= "首页></a></td><td><a href=";<li> $page1 = $this->nowPageIndex - 1;</li> <li> $str .= ereg_replace(" page=/.&","page=$page1&",$url);</li> <li> $str .= ">上一页</a></td><td><a href="; <li> $page1 = $this->nowPageIndex + 1;</li> <li> $str .= ereg_replace("page=/.&","page=$page1&",$url);</li> <li> $str .= ">次页</a></td><td><a href=";<li> $page1 = $this->totlePage ;</li> <li> $str .= ereg_replace("page=/.&","page=) $page1&",$url);</li> <li> $str .= ">末页</a></td><td></tr><table>";</li> <li> }</li> <li> echo $str; </li> <li> }</li> <li> /**</li> <li> 1|2|3|を選択してください。 。 。ナビゲーションを表示します。 </li> <li> @$size ナビゲーション ブループリントの各行に表示されるページ数。デフォルトは 10 です。 </li> <li>*/</li> <li> プライベート関数 show2($size =10)</li> <li> {</li> <li> $url = $_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING'];</li> <li> $str = "<table><tr>";</li> <li> for($index = 1 ; $index <= $this->totlePage ; $index++)</li> <li> { </li> <li> $str .= "<td><a herf=";</li> <li> $str .= ereg_replace("page=/.&","page=$index&",$url);</li> <li> $ str .= "$index</a></td>";</li> <li> if($index == $size)</li> <li> {</li> <li> $str .="</tr><tr>";</li> <li> }</li> <li> } </li> <li> $str .= "</tr></table>";</li> <li> echo $str;</li> <li> }</li> <li>}</li> <li>?></li> </ol></div> <em onclick="copycode($('code_UQQ'));">复制發</em> </div> </td></tr></table> <div id="comment_32834" class="cm"> </div> <div id="post_rate_div_32834"></div> <br><br>