Áö³ ½Ã°£¿¡ °ø°³ÇÑ ¼Ò½º Äڵ带 ÇϳªÇϳª ¼³¸íÇÕ´Ï´Ù.
¾î´ÀÁ¤µµ ÁÖ¼®ÀÌ ÀÖÀ¸´Ï
ÃÖ´ëÇÑ ½º½º·Î ÀÌÇظ¦ ÇÏ´Â °Ô Áß¿äÇÕ´Ï´Ù.
¿À´Ã ´Ù·ê 1~27ÇàÀº mysql DB¿¡ ¿¬°áÇÏ´Â ºÎºÐ°ú, ÇÁ·Î±×·¥¿¡ ÇÊ¿äÇÑ º¯¼ö¸¦
¼³Á¤ÇÏ´Â ºÎºÐ, ±×¸®°í bbs Å×ÀÌºí¿¡¼ ¸ñ·ÏÀ» »Ì¾Æ³»±â À§ÇØ sql Äõ¸®¸¦ ³¯¸®°í(?)
±× °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇÏ´Â ºÎºÐ µîÀ¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.
- <?
- //DB¿¡ ¿¬°áÇÏ´Â ºÎºÐÀÔ´Ï´Ù. Ç×»ó ¹Ýº¹µÇ´Â ºÎºÐÀÌ´Ï ²À ¾Ï±â!!!
- mysql_connect("localhost", "phpbbs", "phpbbs")
or die (mysql_error());
- mysql_select_db("itmembers");
-
- //°Ô½ÃÆÇ ¸ñ·Ïº¸±â¿¡ ÇÊ¿äÇÑ °¢Á¾ º¯¼ö ÃʱⰪÀ» ¼³Á¤ÇÕ´Ï´Ù.
- $tablename="bbs"; //Å×À̺í À̸§
- if($page == '') $page = 1; //ÆäÀÌÁö ¹øÈ£°¡ ¾øÀ¸¸é 1
- $list_num = 10; //ÇÑ ÆäÀÌÁö¿¡ º¸¿©ÁÙ ¸ñ·Ï °¹¼ö
- $page_num = 10; //ÇÑ È¸é¿¡ º¸¿©ÁÙ ÆäÀÌÁö ¸µÅ©(¹À½) °¹¼ö
- $offset = $list_num*($page-1); //ÇÑ ÆäÀÌÁöÀÇ ½ÃÀÛ ±Û ¹øÈ£(listnum ¼ö¸¸Å
³ª´©¾úÀ» ¶§ ½ÃÀÛÇÏ´Â ±ÛÀÇ ¹øÈ£)
-
- //Àüü ±Û ¼ö¸¦ ±¸ÇÕ´Ï´Ù. (Äõ¸®¹®À» »ç¿ëÇÏ¿© °á°ú¸¦ ¹è¿·Î ÀúÀåÇÏ´Â ÀϹÝÀûÀÎ
¹æ¹ý)
- $query="select count(*) from $tablename"; // SQL Äõ¸®¹®À»
¹®ÀÚ¿ º¯¼ö¿¡ ÀÏ´Ü ÀúÀåÇÏ°í
- $result=mysql_query($query) or die (mysql_error()); // À§ÀÇ Äõ¸®¹®À»
½ÇÁ¦·Î ½ÇÇàÇÏ¿© °á°ú¸¦ result¿¡ ´ëÀÔ
- $row=mysql_fetch_row($result); //À§ °á°ú °ªÀ» ÇϳªÇϳª ¹è¿·Î ÀúÀåÇÕ´Ï´Ù.
- $total_no=$row[0]; //¹è¿ÀÇ Ã¹¹ø° ¿ä¼ÒÀÇ °ª, Áï Å×À̺íÀÇ Àüü ±Û ¼ö¸¦
ÀúÀåÇÕ´Ï´Ù.
-
- //Àüü ÆäÀÌÁö ¼ö¿Í ÇöÀç ±Û ¹øÈ£¸¦ ±¸ÇÕ´Ï´Ù.
- $total_page=ceil($total_no/$list_num); // Àüü±Û¼ö¸¦ ÆäÀÌÁö´ç±Û¼ö·Î
³ª´« °ªÀÇ ¿Ã¸² °ªÀ» ±¸ÇÕ´Ï´Ù.
- $cur_num=$total_no - $list_num*($page-1); //ÇöÀç ±Û¹øÈ£
-
- //bbsÅ×ÀÌºí¿¡¼ ¸ñ·ÏÀ» °¡Á®¿É´Ï´Ù. (À§ÀÇ Äõ¸®¹® »ç¿ë¿¹¿Í ºñ½ÁÇÕ´Ï´Ù.)
- $query="select * from $tablename order by number desc limit $offset,
$list_num"; // SQL Äõ¸®¹®
- $result=mysql_query($query) or die (mysql_error()); // Äõ¸®¹®À» ½ÇÇà
°á°ú
- //Äõ¸® °á°ú¸¦ Çϳª¾¿ ºÒ·¯¿Í ½ÇÁ¦ HTML¿¡ ³ªÅ¸³»´Â °ÍÀº HTML ¹® Áß°£¿¡
»ðÀÔÇÕ´Ï´Ù.
- ?>
¼³¸íÀÇ ÆíÀÇ»ó 14ÇàºÎÅÍ º¼±î¿ä. 6~11Çà¿¡¼ ¼±¾ðÇÑ º¯¼ö´Â ¾Æ·¡¿¡¼ ½ÇÁ¦
»ç¿ëµÉ ¶§ ÀÚ¼¼ÇÏ°Ô ¼³¸íÇϱâ·Î ÇÏÁÒ.
14ÇàÀ» º¸¸é $tablename Áï
bbs Å×À̺íÀÇ ·¹ÄÚµå ¼ö¸¦ ±¸ÇÏ´Â Äõ¸®¹®À» $query º¯¼ö¿¡ ÀúÀåÇÑ °ÍÀÔ´Ï´Ù.
15Çà¿¡¼
$query ¹®À» ½ÇÇàÇÏ¿© ±× °á°ú°ªÀ» $result º¯¼ö¿¡ ÀúÀåÇÕ´Ï´Ù.(½ÇÆÐÇϸé
¿¡·¯ ¸Þ½ÃÁö¸¦ Ç¥½ÃÇÏ°í...)
24ÇàÀÇ Äõ¸®¹®Àº bbs Å×ÀÌºí¿¡¼ ¸ðµç °ÍÀ» ºÒ·¯¿ÀµÇ, number Çʵå(Ä÷³)¸¦ ±âÁØÀ¸·Î
³»¸²Â÷¼øÀ¸·Î Á¤·ÄÇÏ¿© Ç¥½ÃÇ϶ó´Â ¹®ÀåÀÔ´Ï´Ù. ´Ü $offset ÇàºÎÅÍ $list_num
°³¸¸Å ºÒ·¯¿À¶ó´Â ¶æÀÔ´Ï´Ù.
¿©±â¼ $offset º¯¼ö¿¡´Â ÇÑ ÆäÀÌÁöÀÇ ½ÃÀÛ
±Û ¹øÈ£°¡ ÀúÀåµÇ¾î ÀÖ°í, $list_num¿¡´Â ÇÑ ÆäÀÌÁö¿¡ Ç¥½ÃÇÒ ¸ñ·ÏÀÇ °³¼ö°¡
ÀúÀåµÇ¾î ÀÖ½À´Ï´Ù.
À§ ¼Ò½º 9ÇàÀ» º¸¸é $list_numÀÌ 10À¸·Î ÁöÁ¤µÇ¾î ÀÖÀ¸¹Ç·Î, ÇÑ
ÆäÀÌÁö¿¡ ¸ñ·ÏÀÇ °³¼ö¸¦ 10°³¾¿ Ç¥½ÃÇÑ´Ù´Â ¶æÀÔ´Ï´Ù.
11Çà¿¡¼ $offset¿¡´Â
$list_num*($page-1) ÀÇ °ªÀÌ ÀúÀåµÇµµ·Ï µÇ¾î ÀÖ½À´Ï´Ù. ÀÌ´Â ÇöÀç ÆäÀÌÁö
¼ö¿¡¼ 1À» »« °ªÀ» $list_num°ú °öÇÏ¿© ±¸ÇÑ °ªÀÔ´Ï´Ù. ¹«½¼ ¶æÀϱî¿ä?!#$@!#$!@#$
¸¸¾à Àüü ±ÛÀÇ ¼ö°¡ 55°³¶ó°í °¡Á¤ÇØ º¾½Ã´Ù. ±×¸®°í $list_num(ÇÑ ÆäÀÌÁö¿¡
º¸¿©ÁÙ ¸ñ·ÏÀÇ ¼ö)°¡ 10À̶ó°í Çϸé,
1ÆäÀÌÁö¿¡´Â 0~9 ÇàÀÌ,
2ÆäÀÌÁö¿¡´Â 10~19Çà,
3ÆäÀÌÁö¿¡´Â
20~29Çà,
4ÆäÀÌÁö¿¡´Â 30~39Çà,
5ÆäÀÌÁö¿¡´Â 40~49Çà,
6ÆäÀÌÁö¿¡´Â 50~55Çà±îÁö
Ç¥½ÃµÉ °ÍÀÔ´Ï´Ù. mysql Äõ¸®¸¦ »ç¿ëÇÒ ¶§ ½ÃÀÛÇÏ´Â ·¹ÄÚµå Çà ¹øÈ£´Â 0ºÎÅÍ ½ÃÀ۵˴ϴÙ.
(½ÇÁ¦ ȸ鿡 Ç¥½ÃµÇ´Â ¼ýÀÚ¿Í´Â ´Ù¸£ÁÒ...)
ÀÌ°ÍÀ» ´Ù½Ã Ç¥·Î ±×¸®¸é ´ÙÀ½°ú
°°½À´Ï´Ù.
ÆäÀÌÁö¹øÈ£($page)
|
±Û ½ÃÀÛ ¹øÈ£($offset)
|
±Û ¸¶Áö¸· ¹øÈ£
|
1
|
0
|
9
|
2
|
10
|
19
|
3
|
20
|
29
|
4
|
30
|
39
|
5
|
40
|
49
|
6
|
50
|
55
|
16ÇàÀº Âü Áß¿äÇÕ´Ï´Ù. À̹ø¿¡ ÷ ³ª¿ÀÁÒ?
15Çà¿¡¼ Äõ¸®ÀÇ °á°ú°ªÀ» $result¿¡
ÀúÀåÇÏ¿´½À´Ï´Ù. ±×·¯³ª ÀÌ·¸°Ô ÀúÀåµÈ °ªÀ» ±×´ë·Î »ç¿ëÇÒ ¼ö´Â ¾ø½À´Ï´Ù. php¿¡¼´Â
mysql Äõ¸®¸¦ ÅëÇØ ¾òÀº °á°ú¸¦ ´Ù½Ã ¹è¿ ÇüÅ·ΠÀúÀåÇÏ¿© Çϳª¾¿ ºÒ·¯³»¾î »ç¿ëÇÏ°Ô
µË´Ï´Ù.
mysql_fetch_row() ÇÔ¼ö´Â Äõ¸® °á°ú¸¦
¹è¿·Î ÀúÀåÇÏ´Â ±â´ÉÀ» ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î À§¿¡¼¿Í °°ÀÌ
$row=mysql_fetch_row($result);
¿Í °°ÀÌ ÇÏ¿´´Ù¸é,
$row[0]¿¡ ½ÇÇà °á°úÀÇ Ã³À½ °ªÀÌ µé¾î°¡°ÚÁÒ. 15ÇàÀÇ
Äõ¸® °á°ú´Â Àüü ·¹ÄÚµå ¼ö¸¦ ±¸ÇÏ´Â °ÍÀ̹ǷΠÇϳªÀÇ °ª¸¸ ¸®ÅÏÇÏ°Ô µÇ¹Ç·Î °á±¹
$row[0]ÀÇ °ª¸¸ ÀÖÀ¸¸é µÇ´Â °Ì´Ï´Ù. ¸¸¾à 24Çà¿¡¼ÀÇ °°Àº Äõ¸®¶ó¸é ±× °á°ú·Î $row[0],
$row[1], $row[2]... ¿Í °°ÀÌ Â÷·Ê´ë·Î ÀúÀåÀÌ µÉ °ÍÀÔ´Ï´Ù. ´Ü ÀÌ ÇÔ¼ö´Â ÇϳªÀÇ
·¹Äڵ忡¿¡¸¸ ÇØ´çµÇ¹Ç·Î ¿©·¯ ·¹ÄÚµåÀÇ °á°ú °ªÀ» Â÷·Ê´ë·Î ¾òÀ»·Á¸é ·¹ÄÚµå ¼ö¸¸Å
¹Ýº¹ÇØ¾ß ÇÕ´Ï´Ù.63ÇàÀº º¸¸é while ¹®À» »ç¿ëÇÏ¿© ·¹ÄÚµå ¼ö¸¸Å ¹Ýº¹ÇÏ¿© ±× °á°ú°ªÀ»
¹è¿·Î ÀúÀåÇÏ´Â ¿¹°¡ µÇ°Ú½À´Ï´Ù.
mysql_fetch_row()¿Í ºñ½ÁÇÑ ¿ªÇÒÀ» ÇÏ´Â ÇÔ¼ö·Î mysql_fetch_array()
ÇÔ¼ö°¡ ÀÖ½À´Ï´Ù. 63Çà¿¡¼´Â ÀÌ ÇÔ¼ö°¡ »ç¿ëµÇ¾ú½À´Ï´Ù. ´ÙÀ½ ½Ã°£¿¡ ±× Â÷À̸¦
¼³¸íÇÏÁÒ.
17Çà¿¡¼ Àüü ·¹ÄÚµå ¼ö¸¦ ÀúÀåÇÏ°í, 20~21Çà¿¡¼´Â Àüü ÆäÀÌÁö ¼ö¿Í ÇöÀç ±Û
¹øÈ£¸¦ ±¸ÇÕ´Ï´Ù.
17ÇàÀº À§¿¡¼ ÀÌ¹Ì ¼³¸íµå·ÈÀ¸´Ï »ý·«ÇÏ°í, 20ÇàÀ» º¸ÁÒ.
17Çà¿¡¼
±¸ÇÑ Àüü ·¹ÄÚµå ¼ö(Àüü ±Û ¼ö°¡ µÇ°ÚÁÒ)¸¦ ÇÑ ÆäÀÌÁö´ç Ãâ·ÂµÉ ¸ñ·Ï ¼ö - À§¿¡¼
10À̶ó°í Á¤Çß¾úÁÒ? ±× ¼ö·Î ³ª´« °ªÀÇ ¿Ã¸² °ªÀ» ±¸ÇÏ´Â °Ì´Ï´Ù. Áï Àüü ±Û ¼ö°¡
55°³¶ó¸é, 55/10 = 5.5 À̹ǷΠ¿Ã¸² ¼öÀ̴ϱî 6ÀÌ µÇ°ÚÁÒ.
Áï 55°³ÀÇ
±ÛÀ» ¸ðµÎ Ç¥½ÃÇÏ·Á¸é 6ÆäÀÌÁö°¡ ÇÊ¿äÇÏ´Ù´Â °Ì´Ï´Ù. ¿Ö 6ÆäÀÌÁö°¡ ÇÊ¿äÇÑ Áö ±×·¡µµ
ÀÌÇØ°¡ ¾ÈµÇ¸é À§ÀÇ µµÇ¥¸¦ ´Ù½Ã Çѹø ºÁÁÖ¼¼¿ä.
À̹ø ½Ã°£¿¡´Â ¿©±â±îÁö ¼³¸íµå¸®ÁÒ.
SQL ¹®¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íµå¸®Áö
¾Ê´Â °ÍÀº, SQL ÀÚü¸¸À¸·Îµµ ¸¹Àº ¼³¸íÀÌ ÇÊ¿äÇϱ⠶§¹®ÀÔ´Ï´Ù. SQL ¹®¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ
¼³¸íÀº, 'Àç¹Ì·Î
¹è¿ì´Â ¿À¶óŬ(SQL) ÀÔ¹®' °úÁ¤À» ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù.
ÀÌ»ó µ¿ÁÖÀÇ ¹æÇØ¿¡µµ ºÒ±¸ÇÏ°í ²à²àÇÏ°Ô °Á¸¦ ¾²°í ÀÖ´Â µ¿Á־ƺü ¼Õº´¸ñÀ̾ú½À´Ï´Ù.