0
 33   4   1
  View Articles

Name  
   ¼Õº´¸ñ  (2002-11-16 18:45:16, Hit : 40078, Vote : 2052)
Homepage  
   http://www.itmembers.net
Subject  
   °Ô½ÃÆÇ ±Û ¸ñ·Ï º¸±â ±â´É(3) list.php ¼³¸í(ß¾)

Áö³­ ½Ã°£¿¡ °ø°³ÇÑ ¼Ò½º Äڵ带 ÇϳªÇϳª ¼³¸íÇÕ´Ï´Ù.
¾î´ÀÁ¤µµ ÁÖ¼®ÀÌ ÀÖÀ¸´Ï ÃÖ´ëÇÑ ½º½º·Î ÀÌÇظ¦ ÇÏ´Â °Ô Áß¿äÇÕ´Ï´Ù.

¿À´Ã ´Ù·ê 1~27ÇàÀº mysql DB¿¡ ¿¬°áÇÏ´Â ºÎºÐ°ú, ÇÁ·Î±×·¥¿¡ ÇÊ¿äÇÑ º¯¼ö¸¦ ¼³Á¤ÇÏ´Â ºÎºÐ, ±×¸®°í bbs Å×ÀÌºí¿¡¼­ ¸ñ·ÏÀ» »Ì¾Æ³»±â À§ÇØ sql Äõ¸®¸¦ ³¯¸®°í(?) ±× °á°ú¸¦ º¯¼ö¿¡ ÀúÀåÇϴ ºÎºÐ µîÀ¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.

  1. <?
  2. //DB¿¡ ¿¬°áÇÏ´Â ºÎºÐÀÔ´Ï´Ù. Ç×»ó ¹Ýº¹µÇ´Â ºÎºÐÀÌ´Ï ²À ¾Ï±â!!!
  3. mysql_connect("localhost", "phpbbs", "phpbbs") or die (mysql_error());
  4. mysql_select_db("itmembers");
  5.  
  6. //°Ô½ÃÆÇ ¸ñ·Ïº¸±â¿¡ ÇÊ¿äÇÑ °¢Á¾ º¯¼ö ÃʱⰪÀ» ¼³Á¤ÇÕ´Ï´Ù.
  7. $tablename="bbs"; //Å×À̺í À̸§
  8. if($page == '') $page = 1; //ÆäÀÌÁö ¹øÈ£°¡ ¾øÀ¸¸é 1
  9. $list_num = 10; //ÇÑ ÆäÀÌÁö¿¡ º¸¿©ÁÙ ¸ñ·Ï °¹¼ö
  10. $page_num = 10; //ÇÑ È­¸é¿¡ º¸¿©ÁÙ ÆäÀÌÁö ¸µÅ©(¹­À½) °¹¼ö
  11. $offset = $list_num*($page-1); //ÇÑ ÆäÀÌÁöÀÇ ½ÃÀÛ ±Û ¹øÈ£(listnum ¼ö¸¸Å­ ³ª´©¾úÀ» ¶§ ½ÃÀÛÇÏ´Â ±ÛÀÇ ¹øÈ£)
  12.  
  13. //Àüü ±Û ¼ö¸¦ ±¸ÇÕ´Ï´Ù. (Äõ¸®¹®À» »ç¿ëÇÏ¿© °á°ú¸¦ ¹è¿­·Î ÀúÀåÇÏ´Â ÀϹÝÀûÀÎ ¹æ¹ý)
  14. $query="select count(*) from $tablename"; // SQL Äõ¸®¹®À» ¹®ÀÚ¿­ º¯¼ö¿¡ ÀÏ´Ü ÀúÀåÇÏ°í
  15. $result=mysql_query($query) or die (mysql_error()); // À§ÀÇ Äõ¸®¹®À» ½ÇÁ¦·Î ½ÇÇàÇÏ¿© °á°ú¸¦ result¿¡ ´ëÀÔ
  16. $row=mysql_fetch_row($result); //À§ °á°ú °ªÀ» ÇϳªÇϳª ¹è¿­·Î ÀúÀåÇÕ´Ï´Ù.
  17. $total_no=$row[0]; //¹è¿­ÀÇ Ã¹¹ø° ¿ä¼ÒÀÇ °ª, Áï Å×À̺íÀÇ Àüü ±Û ¼ö¸¦ ÀúÀåÇÕ´Ï´Ù.
  18.  
  19. //Àüü ÆäÀÌÁö ¼ö¿Í ÇöÀç ±Û ¹øÈ£¸¦ ±¸ÇÕ´Ï´Ù.
  20. $total_page=ceil($total_no/$list_num); // Àüü±Û¼ö¸¦ ÆäÀÌÁö´ç±Û¼ö·Î ³ª´« °ªÀÇ ¿Ã¸² °ªÀ» ±¸ÇÕ´Ï´Ù.
  21. $cur_num=$total_no - $list_num*($page-1); //ÇöÀç ±Û¹øÈ£
  22.  
  23. //bbsÅ×ÀÌºí¿¡¼­ ¸ñ·ÏÀ» °¡Á®¿É´Ï´Ù. (À§ÀÇ Äõ¸®¹® »ç¿ë¿¹¿Í ºñ½ÁÇÕ´Ï´Ù.)
  24. $query="select * from $tablename order by number desc limit $offset, $list_num"; // SQL Äõ¸®¹®
  25. $result=mysql_query($query) or die (mysql_error()); // Äõ¸®¹®À» ½ÇÇà °á°ú
  26. //Äõ¸® °á°ú¸¦ Çϳª¾¿ ºÒ·¯¿Í ½ÇÁ¦ HTML¿¡ ³ªÅ¸³»´Â °ÍÀº HTML ¹® Áß°£¿¡ »ðÀÔÇÕ´Ï´Ù.
  27. ?>

¼³¸íÀÇ ÆíÀÇ»ó 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) ÀÔ¹®' °úÁ¤À» ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù.

ÀÌ»ó µ¿ÁÖÀÇ ¹æÇØ¿¡µµ ºÒ±¸ÇÏ°í ²à²àÇÏ°Ô °­Á¸¦ ¾²°í ÀÖ´Â µ¿Á־ƺü ¼Õº´¸ñÀ̾ú½À´Ï´Ù.


Prev
   °Ô½ÃÆÇ ±Û ¸ñ·Ï º¸±â ±â´É(4) list.php ¼³¸í(ñé)

¼Õº´¸ñ
Next
   °Ô½ÃÆÇ ±Û ¸ñ·Ï º¸±â ±â´É(2) list.php ¼Ò½ºÄÚµù

¼Õº´¸ñ


Copyright 1999-2024 Zeroboard / skin by Zetyx