¸¶±¸º¸µå¸¦ »ç¿ëÇØÁּż­ °¨»çÇÕ´Ï´Ù. ¾ÕÀ¸·Î °è¼Ó ¹ßÀüÇÏ´Â ¸ð½ÀÀ» ÁöÄѺÁÁֽñ⠹ٶø´Ï´Ù
Á¦ÀÛÀÚÀÇ ÇѸ¶µð
º¸µå ¼³Ä¡Çϱâ
ȯ°æ¼³Á¤°ú »ç¿ë
½ºÅ²¿¡ ´ëÇÏ¿©
½ºÅ² ¸¸µå´Â ¹ý!
¸¶±¸º¸µåÀÇ Æ¯Â¡
MAGUBOARD

ÀڽŸ¸ÀÇ µ¶Æ¯ÇÑ ÀÎÅÍÆäÀ̽º¸¦ °¡´ÉÇÏ°Ô ÇÏ´Â
½ºÅ²À» Á¦ÀÛÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇÕ´Ï´Ù

1. ±âº»ÀûÀ¸·Î ¾Ë¾Æ¾ß ÇÒ »çÇ×

¡¡¿ì¼± ÆÞ¿¡ ´ëÇÑ Áö½ÄÀÌ ¾à°£ ÇÊ¿äÇÕ´Ï´Ù. ¾øÀ¸¸é ¾î¿¼ö ¾øÁö¸¸
¡¡ÆÞÀÇ °£´ÜÇÑ ¹®¹ýÀº ¾Æ¼Å¾ß ÇÕ´Ï´Ù

¡¡HTML TAGµéÀ» ¾Æ¼Å¾ßÇÕ´Ï´Ù
¡¡½ºÅ²Àº ÁÖ·Î È­¸é¿¡ Ç¥½ÃÇØÁÖ´Â ±â´ÉÀ» ÇϹǷΠȨÆäÀÌÁö
¡¡Àß ¸¸µå½Ã´Â ºÐÀÌ ½ºÅ²µµ Àß ¸¸µå½Ã°ÚÁÒ?

2. ½ºÅ²ÀÇ ±¸¼º

¡¡½ºÅ²À» Á¦ÀÛÇÏ·Á¸é ¿ì¼± ½ºÅ²ÀÇ ±¸¼ºÀ» ÀÌÇØÇØ¾ß ÇÕ´Ï´Ù
¡¡½ºÅ²Àº ¼¼°³ÀÇ ÆÄÀÏ·Î ÀÌ·ç¾îÁö´Âµ¥ ´ÙÀ½°ú °°½À´Ï´Ù

¡¡skin.pl - ÀÌ°Ô ½ºÅ² ÆÄÀÏÀÔ´Ï´Ù.
¡¡admin.pl - ÀÌ°Ç ½ºÅ² ȯ°æ¼³Á¤ÀÔ´Ï´Ù.
¡¡config.pl - ÀÌ°Ç ½ºÅ² ȯ°æ¼³Á¤ ±âº»°ªÀÌ ÀÖ´Â °÷ÀÔ´Ï´Ù.

¡¡Ãß°¡·Î ¾ÆÀÌÄܵµ µû·Î »ç¿ëÇÏ°í ½Í´Ù¸é ±×·¸°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¡¡½ºÅ² µð·ºÅ丮 ¾Æ·¡ iconÀ̶ó´Â µð·ºÅ丮¸¦ ¸¸µé°í ±×°÷¿¡ µÎ¸é
¡¡°ü¸®°¡ Æí¸®ÇϰÚÁÒ?

3. skin.pl¿¡ ÇÊ¿äÇÑ ·çƾµé...

¡¡skin.pl¿¡ ±âº»ÀûÀ¸·Î °®Ãß¾î¾ß ÇÏ´Â ·çƾÀº ´ÙÀ½°ú °°½À´Ï´Ù

¡¡DispIndex - À妽º Ãâ·Â ·çƾ
¡¡DispWriteForm - ±Û¾²±â/¼öÁ¤/´äº¯ Æû Ãâ·Â ·çƾ
¡¡DispView - ¿äûÇÑ °Ô½Ã¹° Ãâ·Â ·çƾ
¡¡DispPasswdForm - ÆÄÀÏ »èÁ¦/¼öÁ¤½Ã ÆÐ½º¿öµå ÀԷ Ȩ Ãâ·Â ·çƾ
¡¡DispErrorMsg - ¿¡·¯ ¸Þ½ÃÁö Ãâ·Â ·çƾ

¡¡½ºÅ²ÀÇ Á¾·ù¿¡ µû¶ó¼­ ¸î°¡Áö ·çƾÀÌ »ç¿ëµÇÁö ¾ÊÀ» ¼ö µµ ÀÖ½À´Ï´Ù
¡¡ÇÏÁö¸¸ DispIndex´Â ²À ÇÊ¿äÇÑ ·çƾÀÔ´Ï´Ù.

¡¡±âº»ÀûÀ¸·Î ÀÌ ´Ù¼¸°³ÀÇ ·çƾÀ̸é ÃæºÐÇÏÁö¸¸ ºÒÇÊ¿äÇÑ ¼ö°í¸¦
¡¡´ú±â À§ÇØ Áߺ¹µÇ´Â ºÎºÐµéÀ» ·çƾÀ¸·Î ¸¸µé¾î ÇÊ¿äÇÒ¶§
¡¡ºÒ·¯ »ç¿ëÇϽøé ÁÁ½À´Ï´Ù

4. admin.pl¿¡ ÇÊ¿äÇÑ ·çƾ

¡¡SkinAdmin - ½ºÅ² ȯ°æ¼³Á¤ºÎºÐÀ» HTML ·Î ÄÚµùÇÑ ·çƾ
¡¡ÀڽŸ¸ »ç¿ëÇϱâ À§ÇÑ ½ºÅ²¿¡´Â º° ÇÊ¿ä ¾ø°ÚÁÒ?

5. config.pl¿¡ ÇÊ¿äÇÑ ·çƾ

¡¡DefaultSkinConfig - ½ºÅ² ȯ°æ¼³Á¤ÀÇ ±âº»°ªÀ» ÁöÁ¤ÇصР·çƾ
¡¡ÀÌ ·çƾµµ ÀڽŸ¸ »ç¿ëÇϱâ À§ÇÑ ½ºÅ²¿¡´Â º° ÇÊ¿ä ¾ø°ÚÁÒ?

6. ¼­ºê·çƾÀ» ¼±¾ðÇÏ´Â ¹æ¹ý

¡¡ÆÞÀ» °øºÎÇϽŠºÐµéÀº ¾Æ½Ã°ÚÁö¸¸ ±×·¸Áö ¾ÊÀ¸½Å ºÐµéÀ» À§ÇØ °£´ÜÈ÷
¡¡Â¤°í ³Ñ¾î°¡°Ú½À´Ï´Ù

¡¡sub [·çÆÃ¸í] {
¡¡¡¡¡¡¡¡ ... ·çƾ ³»¿ë ...
¡¡}

¡¡À§ÀÇ ´Ù¼¸°³ÀÇ ·çƾµµ À§¿Í°°ÀÌ ¼±¾ðÇØÁÖ½Ã¸é µË´Ï´Ù
¡¡±×¸®°í ±× ·çƾÀÇ ³»¿ëÀº ´ÙÀ½¿¡ ¼³¸íÇÏ´Â µ¥·Î ÇÏ½Ã¸é µË´Ï´Ù

7. skin.pl¿¡¼­ »ç¿ëÇÏ´Â º¯¼ö

¡¡@LIST - ÀÌ ¹è¿­Àº °Ô½ÃÆÇ ¸®½ºÆ® ¹øÈ£°¡ µé¾î ÀÖ½À´Ï´Ù.
¡¡$LINE - ÀÌ º¯¼ö´Â ÃÑ °Ô½Ã¹°ÀÇ ¼ö¸¦ ÀúÀåÇϰí ÀÖ½À´Ï´Ù.
¡¡$SN - ÀÌ ¹è¿­Àº ±× ÆäÀÌÁöÀÇ ½ÃÀÛÇÏ´Â °Ô½Ã¹°ÀÇ ¹øÈ£¸¦ °¡Áý´Ï´Ù.
¡¡$EN - ÀÌ ¹è¿­Àº ±× ÆäÀÌÁöÀÇ ½ÃÀÛÇÏ´Â °Ô½Ã¹°ÀÇ ¹øÈ£¸¦ °¡Áý´Ï´Ù.

¡¡ÇϳªÀÇ °Ô½Ã¹° ÆÄÀÏÀ» Àд ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù

¡¡º¯¼ö $fn¿¡ @LIST¶ó´Â ¹è¿­ÀÇ $i¹øÂ°¿¡ ÀÖ´Â ¹øÈ£¸¦ ³Ö½À´Ï´Ù
¡¡¡¡$fn = $LIST[$i];

¡¡±×¸®°í ¸¶±¸º¸µå¿¡¼­ Á¦°øÇÏ´Â LoadData¶ó´Â ·çƾÀ» È£ÃâÇÕ´Ï´Ù
¡¡¡¡&LoadData;

¡¡±×·¯¸é ´ÙÀ½°ú °°Àº º¯¼öµéÀ» »ç¿ëÇÒ ¼ö ÀÖ°Ô µË´Ï´Ù.

¡¡¡¡$NAME - °Ô½Ã¹° ÀÛ¼ºÀÚÀÇ À̸§ÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.
¡¡¡¡$IP_ADDR - °Ô½Ã¹° ÀÛ¼ºÀÚÀÇ IPÁÖ¼Ò°¡ ´ã°Ü ÀÖ½À´Ï´Ù.
¡¡¡¡$EMAIL - ±Û¾´ÀÌÀÇ ÀüÀÚ¿ìÆí ÁÖ¼Ò°¡ ´ã°Ü ÀÖ½À´Ï´Ù.
¡¡¡¡$TITLE - °Ô½Ã¹°ÀÇ Á¦¸ñÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.
¡¡¡¡$DATE - °Ô½Ã¹° ÀÛ¼ºÀÏÀÌ ´ã°Ü ÀÖ½À´Ï´Ù.
¡¡¡¡$PW - °Ô½Ã¹° ¼öÁ¤/»èÁ¦ ÆÐ½º¿öµå°¡ µé¾î ÀÖ½À´Ï´Ù
¡¡¡¡$F_OK - ÆÄÀÏ Ã·ºÎÀÇ ¿©ºÎ¸¦ ¾Ë·ÁÁÝ´Ï´Ù.(ÀÖÀ¸¸é 1, ¾øÀ¸¸é 0)
¡¡¡¡$SFName - ¼­¹ö»ó¿¡ ÀúÀåµÇ¾î Àִ ÷ºÎÆÄÀÏÀÇ À̸§
¡¡¡¡$FName - ÷ºÎµÈ ÆÄÀÏÀÇ ¿ø·¡ À̸§
¡¡¡¡$TEXT - °Ô½Ã¹°ÀÇ ³»¿ëÀÌ µé¾î ÀÖ½À´Ï´Ù

8. °Ô½Ã¹° ¸ñ·ÏÀ» Ãâ·ÂÇÏ·Á¸é...

¡¡ÀÌÁ¦ °Ô½Ã¹° ¸ñ·ÏÀ» Ãâ·ÂÇÏ´Â ¹æ¹ýÀ» ¼Ò°³ÇϰڽÀ´Ï´Ù
¡¡¿ì¼± °Ô½Ã¹° ¸ñ·Ï°ú ³»¿ëÀ» ÁË´Ù Ãâ·ÂÇÏ·Á¸é...

¡¡sub DispIndex{
¡¡¡¡foreach $tmp (@LIST){
¡¡¡¡¡¡$fn = $LIST[$tmp];
¡¡¡¡¡¡&LoadData;
¡¡¡¡¡¡print "Content type: html/text\n\n";
¡¡¡¡¡¡print "¹øÈ£ : $NUM / ±Û¾´ÀÌ : $NAME($IP_ADDR) /
¡¡¡¡¡¡¡¡¡¡¡¡ÀüÀÚ¿ìÆíÁÖ¼Ò : $EMAIL<br>Á¦¸ñ : $TITLE /
¡¡¡¡¡¡¡¡¡¡¡¡±Û¾´³¯ : $DATE / ÆÐ½º¿öµå : $PW /<br>
¡¡¡¡¡¡¡¡¡¡¡¡$TEXT<br>
¡¡¡¡¡¡¡¡¡¡¡¡ÆÄÀÏ Ã·ºÎ ¿©ºÎ : $F_OK($SFName-$FName)<br>
¡¡¡¡¡¡¡¡¡¡¡¡-----------------------------------------<br>";
¡¡¡¡¡¡}
¡¡}

¡¡Á¤ÇØÁø ÆäÀÌÁö¸¸ Ãâ·ÂÇÏ·Á¸é...

¡¡sub DispIndex{
¡¡¡¡for($i=$SN; $i>$EN-1; $i--){
¡¡¡¡¡¡$fn = $LIST[$i];
¡¡¡¡¡¡&LoadData;
¡¡¡¡¡¡print "Content type: html/text\n\n";
¡¡¡¡¡¡print "¹øÈ£ : $NUM / ±Û¾´ÀÌ : $NAME($IP_ADDR) /
¡¡¡¡¡¡¡¡¡¡¡¡ÀüÀÚ¿ìÆíÁÖ¼Ò : $EMAIL<br>Á¦¸ñ : $TITLE /
¡¡¡¡¡¡¡¡¡¡¡¡±Û¾´³¯ : $DATE / ÆÐ½º¿öµå : $PW /<br>
¡¡¡¡¡¡¡¡¡¡¡¡$TEXT<br>
¡¡¡¡¡¡¡¡¡¡¡¡ÆÄÀÏ Ã·ºÎ ¿©ºÎ : $F_OK($SFName-$FName)<br>
¡¡¡¡¡¡¡¡¡¡¡¡-----------------------------------------<br>";
¡¡¡¡¡¡}
¡¡}

¡¡°Ô½Ã¹° º¸±â ¸µÅ©´Â(ŸÀÌÆ²À» ¸µÅ©ÇÑ´Ù°í Çϸé)...
¡¡¡¡<a href="./mgboard.cgi?db=$in{'db'}&func=view&fn=$fn
¡¡¡¡¡¡&page=$in{'page'}">$TITLE</a>

¡¡±×·³ ½ºÅ²ÀÇ DispView¶ó´Â ¼­ºê·çƾÀ» ÀÌ¿ëÇØ Ãâ·ÂÇØÁÖ¸é µË´Ï´Ù.
¡¡°Ô½Ã¹°À» Àоî¿Í º¯¼öµéÀ» Ãâ·ÂÇØ ÁÖ¸é µÇÁÒ...

¡¡Âü°í·Î °Ë»öÀ» À§ÇÑ ÆûÀº ´ÙÀ½°ú °°ÀÌ ½áÁÖ¸é µË´Ï´Ù.

¡¡<form name="form" method="post" action="./mgboard.cgi">
¡¡<input type='hidden' name='db' value="$in{'db'}">
¡¡<input type='hidden' name='func' value="search">
¡¡<select name="SearchArea"class=inputbox>
¡¡¡¡<option selected value="title_text">Á¦¸ñ+³»¿ë</option>
¡¡¡¡<option value="name_title">À̸§+Á¦¸ñ</option>
¡¡¡¡<option value="name_text">À̸§+³»¿ë</option>
¡¡¡¡<option value="text">³»¿ë</option>
¡¡¡¡<option value="title">Á¦¸ñ</option>
¡¡¡¡<option value="name">À̸§</option>
¡¡¡¡<option value="all">Àüü¿¡¼­</option>
¡¡</select>
¡¡<select name="opt" class=inputbox>
¡¡¡¡<option value="andsearch">AND</option>
¡¡¡¡<option selected value="orsearch">OR</option>
¡¡</select>
¡¡<input type="text" class=inputbox name="keyword"
¡¡¡¡¡¡value="" size="20">
¡¡<input type="submit" value=" ã ±â " class=button>
¡¡</form>

9. ³ª¸ÓÁö ºÎºÐµé¿¡ ´ëÇÏ¿©...

¡¡ÀÌÁ¦ ³ª¸ÓÁö ºÎºÐµé¸¸ ³²¾Ò½À´Ï´Ù
¡¡³ª¸ÓÁö ºÎºÐµéÀº °£´ÜÇØ¼­ ±»ÀÌ ¼³¸íÇÒ Çʿ䰡 ¾øÀ¸¹Ç·Î
¡¡°£´ÜÇÑ ¼Ò½º¸¦ ºÐ¼®ÇϽø鼭 »ý°¢ÇϽñ⠹ٶø´Ï´Ù

¡¡¾Æ¸¶µµ perl°ú html tag¿¡ ´ëÇÑ ±âº» Áö½ÄÀÌ ÀÖÀ¸½Å ºÐµåÀº
¡¡¹«½¼ ¸»ÀÎÁö ½±°Ô ÀÌÇØÇϼÌÀ» °Ì´Ï´Ù

¡¡½ºÅ²À» ¸¸µé´Ù°¡ ÀÌÇØ°¡Áö ¾Ê´Â ºÎºÐµéÀÌ ÀÖÀ¸½Ã¸é ¸¶±¸º¸µå
¡¡¹°¾îº¸±â(Q&A)°Ô½ÃÆÇÀ» ÀÌ¿ëÇØÁֽñ⠹ٶø´Ï´Ù