Ignore:
Timestamp:
2007/07/20 15:58:59 (19 years ago)
Author:
nanasess
Message:

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Location:
branches/feature-module-update
Files:
1 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update

    • Property svn:ignore set to
      .cache

      .settings

      .projectOptions
  • branches/feature-module-update/data/class/SC_PageNavi.php

    r12157 r15078  
    66 */ 
    77 
    8 /* ¢¨»ÈÍѾò·ï¢¨ 
    9     ¡¦form¥¿¥°¤Ë°Ê²¼¤òÄɲ乤롣 
     8/* ※使用条件※ 
     9    ・formタグに以下を追加する。 
    1010        <input type="hidden" name="pageno" value="<!--{$tpl_pageno}-->"> 
    11     ¡¦¥½¡¼¥¹¤ÎºÇ½é¤Ë°Ê²¼¤òµ­½Ò¤¹¤ë¡£ 
     11    ・ソースの最初に以下を記述する。 
    1212        $objPage->tpl_pageno = $_POST['pageno']; 
    13     ¡¦$func_name¤Ë»ØÄꤹ¤ëJavaScript¤ÎÎã 
    14         // ¥Ú¡¼¥¸¥Ê¥Ó¤Ç»ÈÍѤ¹¤ë 
     13    ・$func_nameに指定するJavaScriptの例 
     14        // ページナビで使用する 
    1515        function fnNaviPage(pageno) { 
    1616            document.form1['pageno'].value = pageno; 
     
    1919*/ 
    2020class SC_PageNavi { 
    21     var $now_page;      // ¸½ºß¤Î¥Ú¡¼¥¸ÈÖ¹æ 
    22     var $max_page;      // ºÇ½ª¤Î¥Ú¡¼¥¸ÈÖ¹æ 
    23     var $start_row;     // ³«»Ï¥ì¥³¡¼¥É 
    24     var $strnavi;       // ¥Ú¡¼¥¸Á÷¤êʸ»úÎó 
    25     var $arrPagenavi = array(); // ¥Ú¡¼¥¸ 
     21    var $now_page;      // 現在のページ番号 
     22    var $max_page;      // 最終のページ番号 
     23    var $start_row;     // 開始レコード 
     24    var $strnavi;       // ページ送り文字列 
     25    var $arrPagenavi = array(); // ページ 
    2626 
    27     // ¥³¥ó¥¹¥È¥é¥¯¥¿ 
     27    // コンストラクタ 
    2828    function SC_PageNavi($now_page, $all_row, $page_row, $func_name, $navi_max = NAVI_PMAX) { 
    2929        $this->arrPagenavi['mode'] = 'search'; 
    3030 
    31         //¸½ºß¥Ú¡¼¥¸($now_page)¤¬Àµ¤·¤¤¿ôÃͤǤʤ¤¾ì¹ç 
     31        //現在ページ($now_page)が正しい数値でない場合 
    3232        if (!eregi("^[[:digit:]]+$", $now_page) || $now_page < 1 || $now_page == "") { 
    3333            $this->now_page = 1; 
     
    3737        $this->arrPagenavi['now_page'] = $this->now_page; 
    3838 
    39         // ºÇ½ª¥Ú¡¼¥¸¤Î·×»» 
     39        // 最終ページの計算 
    4040        $this->max_page = ceil($all_row/$page_row); 
    4141 
    42         // ºÇ½ª¥Ú¡¼¥¸¤è¤ê¤â¸½ºß¥Ú¡¼¥¸¤¬Â礭¤¤¾ì¹ç¤Ï¡¢ºÇ½é¤ËÌ᤹¡£ 
     42        // 最終ページよりも現在ページが大きい場合は、最初に戻す。 
    4343        if($this->max_page < $this->now_page) { 
    4444            $this->now_page = 1; 
     
    4747        $this->start_row = ($this->now_page - 1) * $page_row; 
    4848     
    49         // ³«»Ï¹Ô¤¬ÉÔÀµ¤Ê¾ì¹ç 
     49        // 開始行が不正な場合 
    5050        if (!($this->start_row < $all_row && $this->start_row >= 0)) { 
    5151            $this->start_row = 0; 
     
    5454        if($all_row > 1) { 
    5555 
    56             //¡ÖÁ°¤Ø¡×¡Ö¼¡¤Ø¡×¤ÎÀßÄê 
     56            //「前へ」「次へ」の設定 
    5757            if ($this->now_page > 1) { 
    58                 $before="<a href=\"". $_SERVER['PHP_SELF']. "\" onclick=\"$func_name('" . (($this->now_page) - 1) . "'); return false;\"><<Á°¤Ø</a> "; 
     58                $before="<a href=\"". $_SERVER['PHP_SELF']. "\" onclick=\"$func_name('" . (($this->now_page) - 1) . "'); return false;\"><<前へ</a> "; 
    5959                $this->arrPagenavi['before'] = ($this->now_page) - 1; 
    6060            }else{ 
     
    6363             
    6464            if ($this->now_page < $this->max_page) { 
    65                 $next="<a href=\"". $_SERVER['PHP_SELF']. "\" onclick=\"$func_name('" . (($this->now_page) + 1) ."'); return false;\">¼¡¤Ø>></a> "; 
     65                $next="<a href=\"". $_SERVER['PHP_SELF']. "\" onclick=\"$func_name('" . (($this->now_page) + 1) ."'); return false;\">次へ>></a> "; 
    6666                $this->arrPagenavi['next'] = ($this->now_page) + 1; 
    6767            }else{ 
     
    6969            } 
    7070             
    71             // ɽ¼¨¤¹¤ëºÇÂç¥Ê¥Ó¿ô¤ò·è¤á¤ë¡£ 
     71            // 表示する最大ナビ数を決める。 
    7272            if($navi_max == "" || $navi_max > $this->max_page) { 
    73                 // À©¸Â¥Ê¥Ó¿ô¤Î»ØÄ꤬¤Ê¤¤¡£¥Ú¡¼¥¸ºÇÂç¿ô¤¬À©¸Â¥Ê¥Ó¿ô¤è¤ê¾¯¤Ê¤¤¡£ 
     73                // 制限ナビ数の指定がない。ページ最大数が制限ナビ数より少ない。 
    7474                $disp_max = $this->max_page; 
    7575            } else { 
    76                 // ¸½ºß¤Î¥Ú¡¼¥¸¡ÜÀ©¸Â¥Ê¥Ó¿ô¤¬É½¼¨¤µ¤ì¤ë¡£ 
     76                // 現在のページ+制限ナビ数が表示される。 
    7777                $disp_max = $this->now_page + $navi_max - 1; 
    78                 // ¥Ú¡¼¥¸ºÇÂç¿ô¤òͤ¨¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ú¡¼¥¸ºÇÂç¿ô¤Ë¹ç¤ï¤»¤ë¡£ 
     78                // ページ最大数を超えている場合は、ページ最大数に合わせる。 
    7979                if($disp_max > $this->max_page) { 
    8080                    $disp_max = $this->max_page; 
     
    8282            } 
    8383 
    84             // ɽ¼¨¤¹¤ëºÇ¾®¥Ê¥Ó¿ô¤ò·è¤á¤ë¡£ 
     84            // 表示する最小ナビ数を決める。 
    8585            if($navi_max == "" || $navi_max > $this->now_page) { 
    86                 // À©¸Â¥Ê¥Ó¿ô¤Î»ØÄ꤬¤Ê¤¤¡£¸½ºß¥Ú¡¼¥¸Èֹ椬À©¸Â¥Ê¥Ó¿ô¤è¤ê¾¯¤Ê¤¤¡£ 
     86                // 制限ナビ数の指定がない。現在ページ番号が制限ナビ数より少ない。 
    8787                $disp_min = 1; 
    8888            } else { 
    89                 // ¸½ºß¤Î¥Ú¡¼¥¸-À©¸Â¥Ê¥Ó¿ô¤¬É½¼¨¤µ¤ì¤ë¡£ 
     89                // 現在のページ-制限ナビ数が表示される。 
    9090                $disp_min = $this->now_page - $navi_max + 1; 
    9191            } 
Note: See TracChangeset for help on using the changeset viewer.