·Î±×ÀÎ | ȸ¿ø°¡ÀÔ | °í°´¹®ÀÇ
ÇÁ·Î±×·¡¹Ö°­Á > PHP °­ÁÂ
PEAR DB_Pager Class Write by [À̱ٻó]
- PEAR DB_Pager Class ¼Ò°³ & ¼³Ä¡
- PEAR DB_Pager Class »ç¿ë¹ý

## PEAR DB_Pager Class »ç¿ë¹ý

¡á DB_Pager::getData($from, $limit, $numrows, $maxpages)

ÀÇ Çü½Ä°ú ¹Ýȯ°ªÀº ´ÙÀ½°ú °°½À´Ï´Ù.

Çü½Ä

int $from ½ÃÀÛ ÆäÀÌÁö int $limit ÆäÀÌÁö´ç °Ô½Ã¹°ÀÇ °¹¼ö int $numrows Äõ¸®ÇÑ °¹¼ö int $maxpages È­¸é¿¡ Ãâ·ÂÇÒ ÆäÀÌÁö °¹¼ö (»ý·«ÇÏ¸é ¸ðµç ÆäÀÌÁö)
¹Ýȯ°ª
array( 'current' => X, // ÇöÁ¦ ÆäÀÌÁö 'numrows' => X, // Äõ¸®ÇÑ °¹¼ö 'next' => X, // ´ÙÀ½ ÆäÀÌÁö from °ª 'prev' => X, // ÀÌÀü ÆäÀÌÁö from °ª 'remain' => X, // number of results remaning *in next page* 'numpages' => X, // ÀüÆä ÆäÀÌÁö °ª 'from' => X, // Äõ¸®ÇÑ ½ÃÀÛ ÆäÀÌÁö °ª 'to' => X, // Äõ¸®ÇÑ ¸¶Áö¸· ÆäÀÌÁö °ª 'limit' => X, // ÆäÀÌÁö´ç °Ô½Ã¹°ÀÇ °¹¼ö 'maxpages' => X, // È­¸é¿¡ Ãâ·ÂÇÒ ÆäÀÌÁö °¹¼ö 'firstpage' => X, // óÀ½ ÆäÀÌÁöÀÇ from °ª 'lastpage' => X, // ¸¶Áö¸· ÆäÀÌÁöÀÇ from °ª 'pages' => array( // Ãâ·ÂÇÒ ÆäÀÌÁö 1 => X, 2 => X, 3 => X ) );
ÀÚ ±×·³ °£´ÜÇÑ ¿¹¸¦ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. µ¥ÀÌÅÍ´Â ¿À´ÃÀÇ ¼Ó´ãÀ» »ç¿ëÇÏ¿´½À´Ï´Ù. config.php
<? // config.php ȯ°æ¼³Á¤ // µ¥ÀÌÅͺ£À̽º Á¤º¸ ¼³Á¤ DEFINE("DB_TYPE", "mysql"); DEFINE("DB_HOST", "localhost"); DEFINE("DB_PORT", "3306"); DEFINE("DB_USER", "root"); DEFINE("DB_PASS", "apmsetup"); DEFINE("DB_NAME", "test"); // PEAR DB_Pager ·Îµå include_once "DB/Pager.php"; // DNS ¹®ÀÚ¿­ ¼³Á¤ $dsn_str = DB_TYPE . "://" . DB_USER . ":" . DB_PASS . "@" . DB_HOST . ":" . DB_PORT . "/" . DB_NAME; // µðºñ Á¢¼Ó $db = DB::connect($dsn_str); if(DB::isError($db)) { // Á¢¼Ó ¿¡·¯ Ç¥½Ã echo $dsn_str . "<BR>\n"; echo $db->getMessage(); exit; } ?>
today_proverb.php
<? // ȯ°æ¼³Á¤ include "./config.php"; // Ãâ·ÂÇÒ ÆäÀÌÁö if( empty($from) ) $from = 0; // ÆäÀÌÁö´ç °Ô½Ã¹°ÀÇ °¹¼ö $limit = 5; // Äõ¸®ÇÑ °¹¼ö $numrows = 0; // È­¸é¿¡ Ãâ·ÂÇÒ ÆäÀÌÁö °¹¼ö $maxpages = 10; // ÃÑ °¹¼ö ±¸Çϱâ $numrows = $db->getOne(" SELECT COUNT(num) FROM today_proverb "); // LIMIT Äõ¸® $sql_str = " SELECT * FROM today_proverb ORDER BY num DESC "; $result = $db->limitQuery($sql_str, $from, $limit); if(DB::isError($db)) { // ¿¡·¯ Ç¥½Ã echo $db->getMessage(); exit; } // µ¥ÀÌÅͰ¡ ÀÖ³ª? if($result->numRows() < 1) { echo "³»¿ë ¾øÀ½"; exit; } // DB_Pager::getData $pager_data = DB_Pager::getData($from, $limit, $numrows, $maxpages); if(DB::isError($db)) { // ¿¡·¯ Ç¥½Ã echo $db->getMessage(); exit; } echo "¸ðµÎ :: " . $pager_data[numrows]; echo "<BR>"; echo "ÇöÁ¦ :: " . $pager_data[current] . " / " . $pager_data[numpages]; echo "<BR>"; echo "<BR>"; // ¸®½ºÆ® Ãâ·Â while($info = $result->fetchRow(DB_FETCHMODE_ASSOC)) { echo "¿À´ÃÀÇ ¼Ó´ã :: [" . $info[num] . "] - " . $info[content]; echo "<BR>"; } // ÀÌÀü ÆäÀÌÁö // $pager_data[prev] °¡ null ÀÌ ¾Æ´Ï¶ó¸é ÀÌÀü ÆäÀÌÁö°¡ ÀÖÀ½ if( $pager_data[prev] != null ) echo "[<A HREF='" . $PHP_SELF . "?from=" . $pager_data[prev] . "'><< ÀÌÀü</A>]"; // ÆäÀÌÁö ¸®½ºÆ® Ãâ·Â foreach ($pager_data[pages] as $page_str => $from_str) { // ¸¸¾à $from °ú $from_str ÀÌ °°´Ù¸é ÇöÁ¦ ÆäÀÌÁö if( $from == $from_str ) echo "<B>" . $page_str . "</B>&nbsp;"; else echo "<A HREF='" . $PHP_SELF . "?from=" . $from_str . "'>" . $page_str . "</A>&nbsp;"; } // ´ÙÀ½ ÆäÀÌÁö // $pager_data[next] °¡ null ÀÌ ¾Æ´Ï¶ó¸é ´ÙÀ½ ÆäÀÌÁö°¡ ÀÖÀ½ if( $pager_data[next] != null ) echo "[<A HREF='" . $PHP_SELF . "?from=" . $pager_data[next] . "'>´ÙÀ½ >></A>]"; ?>
Ãâ·Â °á°ú¹° Ãâ·Â °á°ú¹° Ç® ¼Ò½º ´Ù¿î·Îµå :: http://www.apmsetup.com/PHP/today_proverb/today_proverb.zip
ÀÌÀü±Û PEAR DB_Pager Class ¼Ò°³ & ¼³Ä¡
´ÙÀ½±Û ´ÙÀ½ °­Á°¡ ¾ø½À´Ï´Ù.
À̸ÞÀϹ«´Ü¼öÁý°ÅºÎ , ±¤°íÁ¦ÈÞ¹®ÀÇ , E-Mail, MSN : okstart@apmsetup.com