KONLO BOARD ½ºÅ² Á¦ÀÛ¹ý (konlo@konlo.net, http://www.konlo.net/); ¼³¸í¿¡ ¾Õ¼ : [º¯¼ö¸í] Àº º¯ÇÒ ¼ö ÀÖ´Â ºÎºÐÀÌ´Ù. »ç¿ëÀÚ°¡ ÁöÁ¤ÇÏ´Â ºÎºÐÀÔ´Ï´Ù. 1. Ư¡ KONLO BOARD´Â ÇÁ·Î±×·¥ºÎºÐ(PHP)°ú ÀÎÅÍÆäÀ̽º(HTML)ºÐºÐÀÌ ºÐ¸® µÇ¾î ÇÁ·Î±×·¥À» Àß ¸ð¸£´Â »ç¶÷µµ HTMLÀÇ ¼öÁ¤¸¸À¸·Î ½ºÅ²À» ½±°Ô ¼öÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. 2. ½ºÅ² ±¸¼º ÆÄÀÏ 1) BoardHeader.ihtml : KONLO BOARDÀÇ È¸é »ó´Ü ºÎºÐ 2) BoardFooter.ihtml : KONLO BOARDÀÇ È¸é ÇÏ´Ü ºÎºÐ 3) BoardList.ihtml : KONLO BOARD ¸®½ºÆ® ȸé 4) BoardTopList.ihtml : KONLO BOARD ¸ÞÀÎ ÆäÀÌÁö Ãâ·Â¿ë ȸé 5) BoardView.ihtml : KONLO BOARD ±Û º¸±â ȸé 6) BoardWrite.ihtml : KONLO BOARD ±Û ¾²±â ȸé 7) default.css : CSS ÆÄÀÏ 3. IHTML ÆÄÀÏ IHTMLÆÄÀÏÀº °Ô½ÃÆÇÀÇ ÀÎÅÍÆäÀ̽º¸¦ ¸¸µå´Â ÆÄÀÏÀ̸ç HTML ºÎºÐ°ú templateºÎºÐÀÇ 2°¡Áö ºÎºÐÀ¸·Î ³ª´¯´Ï´Ù. HTML ºÎºÐÀº ÀϹÝÀûÀ¸·Î »ç¿ëÇÏ´Â HTML»ç¿ë¹æ¹ý°ú °°À¸¸ç templateºÎºÐÀº ÇÁ·Î±×·¥¿¡¼ »ç¿ëÇÏ´Â º¯¼ö´Â »ç¿ë»ç¿ëÇÏ¿© ±¸¼ºÇÕ´Ï´Ù. 1) ÀÏ¹Ý º¯¼ö - {º¯¼ö¸í} - ex) {USERID} : USERID·Î ġȯµÉ ºÎºÐ 2) BLOCK º¯¼ö - <!-- BEGIN block_name --> [HTML ¹× template º¯¼ö¸í »ç¿ë°¡´É] <!-- END block_name --> - BLOCK ºÎºÐÀº À§¿Í °°ÀÌ blockÀÇ ½ÃÀۺκÐ(<!-- BEGIN block_name -->)°ú ³¡ºÎºÐ(<!-- END block_name -->)À» °³·Î¿î ÁÙ·Î ÇØ¼ »ç¿ëÇØ¾ßÇÕ´Ï´Ù. - ex) <!-- BEGIN login --> {USERNAME}´ÔÀÌ ·Î±×ÀÎ Çϼ̽À´Ï´Ù. <!-- END login --> 4. BOARD ½ºÅ² ÀÛ¾÷ 1) ½ºÅ² ¸¸µé±â (1) ½ºÅ² ÀÛ¾÷Àº template/sample ¿¡ ÀÖ´Â ihtml ÆÄÀÏÀ» °¡Áö°í ÀÛ¾÷ÇÏ½Ã¸é Æí¸®ÇÕ´Ï´Ù. (2) ½ºÅ²À» ¸¸µé±â À§Çؼ´Â °¢°¢ÀÇ ÇÊ¿äÇÑ Ç׸ñÀ» È®ÀÎÇϰí ÀüüÀûÀÎ HTMLÀÛ¾÷À» ¸¶Ä£ÈÄ ÀÛ¾÷ÇÑ HTML¿¡ ÇÊ¿äÇÑ ºÎºÐÀ» ³¢¿ö ³Ö´Â ¹æ½ÄÀÌ ÁÁ½À´Ï´Ù. (3) template º¯¼ö¿Í block º¯¼ö´Â ´©¶ôµÇÁö ¾Êµµ·Ï ÇÕ´Ï´Ù. (4) ½ºÅ²ÀÛ¾÷ºÎºÐ¿¡ <TABLE> ·Î ±¸¼ºµÇ¾î¾ßÇÒ ºÎºÐÀº boarder=1·Î Ç¥½ÃÇß½À´Ï´Ù. (5) template »ç¿ë¹ý¿¡ ¼÷´ÞµÇ½Å ºÐÀº ÀÚÀ¯ÀÚÀç·Î templateÆÄÀÏÀ» ¼öÁ¤ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. (6) <INPUT> Tag ÀÇ typeÀÌ submit°ú imageÀº ¼·Î ȣȯµÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¸Áö ¾ÊÀº °ÍµéÀº skin ÀÛ¾÷ºÎºÐ¿¡ ÁÖ¼®À» ´Þ¾Æ ³ù½À´Ï´Ù. (7) ±×¸²ÀÇ °æ·Î´Â {SKIN}À¸·Î ½ÃÀÛÇÕ´Ï´Ù. ex) <img src='{SKIN}/images/btn_delete.gif'> (8) styleÀº ¹Ýµå½Ã .css ÆÄÀÏ·Î µû·Î ÀúÀåÇÕ´Ï´Ù. 2) * PHP(ÇÁ·Î±×·¥)»óÀÇ ¼öÁ¤ÀÌ ¾ø´Â ÇÑ Sample·Î Á¦°øµÇ´Â IHTMLÆÄÀÏ¿¡¼ ´ÙÀ½°ú °°Àº ºÎºÐÀº ±×´ë·Î »ç¿ëÇϽñ⠹ٶø´Ï´Ù. 3) BoardHeader.ihtml ¿¡¼ ¹Ýµå½Ã Æ÷ÇԵǾî¾ßÇÏ´Â ºÎºÐ (1) Board Title -------------------------------------------------- <TITLE>{BOARD_TITLE}</TITLE> -------------------------------------------------- (2) ¹ü¿ë ÀÚ¹Ù½ºÅ©¸³Æ® Æ÷ÇÔ -------------------------------------------------- <script language="javascript" src='{K_JSLIB_PATH}/KCJavaScriptLib.js'></script> -------------------------------------------------- (3) »ç¿ëÀÚ µî·Ï¿ë ÀÚ¹Ù½ºÅ©¸³Æ® Æ÷ÇÔ -------------------------------------------------- <script> function RegUser() { var mywin = window.open("{K_USERREG_WEB}/register/Register.php", "RegUser", "RESIZABLE=no,SCROLLBARS=yes,WIDTH=500,HEIGHT=600"); mywin.window.focus(); } </script> -------------------------------------------------- (4) CSS ÆÄÀÏ -------------------------------------------------- <link href='{SKIN}/default.css' rel=stylesheet> -------------------------------------------------- ex) <link href='{SKIN}/default.css' rel=stylesheet> (5) Title À̹ÌÁö -------------------------------------------------- <!-- BEGIN timage --> <tr> <td colspan=2> <img src='{SKIN}/{TITLEIMAGE}'> </td> </tr> <!-- END timage --> -------------------------------------------------- (6) »ç¿ëÀÚ µî·Ï ¹× ¼öÁ¤ ¸µÅ© -------------------------------------------------- <a href='javascript:RegUser()'> {REGTEXT} </a> -------------------------------------------------- (7) »ç¿ëÀÚ ·Î±×ÀÎ ¹× ·Î±×¾Æ¿ô -------------------------------------------------- <a href='{K_LOGIN_WEB}/{LOGLINK}?nu={REQUEST_URI}'>{LOGTEXT}</a> -------------------------------------------------- (8) °ü¸®ÀÚ ÆäÀÌÁö ¸µÅ© -------------------------------------------------- <!-- BEGIN adminlink --> <a href='{ADMIN_WEB}/menu/index.php' target=_new>°ü¸®ÀÚ ÆäÀÌÁö</a> <!-- END adminlink --> -------------------------------------------------- 4) BoardFooter.ihtml ¿¡¼ ¹Ýµå½Ã Æ÷ÇԵǾî¾ßÇÏ´Â ºÎºÐ (1) CopyRight : ÇÁ·Î±×·¥°ú ½ºÅ²¿¡ ´ëÇÑ CopryRight ºÎºÐÀº ¹Ýµå½Ã Æ÷ÇÔ½ÃÄÑÁֽʽÿÀ. <font style=font-size:7pt> Copyright <a href='http://www.konlo.net'>KONLO¢â</a> / skin by <a href='http://www.sohoon.com/'> hooni</a> </font> 5) BoardList.ihtml (1) List ¿ë ÀÚ¹Ù½ºÅ©¸³Æ® Æ÷ÇÔ -------------------------------------------------- <script src='{BOARD_WEB_ROOT}/BoardList.js'></script> -------------------------------------------------- (2) Ä«Å×°í¸® Ãâ·Â -------------------------------------------------- <!-- BEGIN category --> {CATEGORYSB} <!-- END category --> -------------------------------------------------- (3) ±Û ¸®½ºÆ® ºÎºÐ -------------------------------------------------- <form name=FDeleteRow method=post> <input type=hidden name='command' value='KCBoardList.DeleteRow'> <table border=1 cellpadding=0 cellspacing=0 width=100% > <tr > <td width=40 align=center >¹øÈ£</td> <td align=center >Á¦¸ñ</td> <td width=60 align=center >ÀÛ¼ºÀÚ</td> <td width=80 align=center >ÀÛ¼ºÀÏ</td> <!-- BEGIN tit_upload --> <td width=80 align=center >¾÷·Îµå ¼ö</td> <!-- END tit_upload --> <td width=40 align=center >Á¶È¸¼ö</td> <!-- BEGIN tit_delete --> <td width=40 align=center >»èÁ¦</td> <!-- END tit_delete --> </tr> <!-- BEGIN row --> <tr> <td align=center>{NUMBER}</td> <td >{RESPACE}<a href='BoardView.php?tId={ID}&{DEFAULTPARAM}' {TOPSTYLE}>{CATEGORY}{SUBJECT} {COMCOUNT}</a></td> <td align=center>{NAME}</td> <td align=center>{WDATE}</td> <!-- BEGIN list_upload --> <td align=center>{PDS}</td> <!-- END list_upload --> <td align=center>{HIT}</td> <!-- BEGIN check_delete --> <td align=center><input type=checkbox name='deleteId[]' value='{ID}'></td> <!-- END check_delete --> </tr> <!-- END row --> <!-- BEGIN empty --> <tr> <td colspan=7 align=center> <p>µ¥ÀÌŸ°¡ ¾ø½À´Ï´Ù.</p> </td> </tr> <!-- END empty --> </table> </form> -------------------------------------------------- (4) ¸µÅ© Á¤º¸ -------------------------------------------------- <a href='BoardList.php?tb={TABLENAME}'>¸ñ·Ï óÀ½</a> <a href='BoardWrite.php?{DEFAULTPARAM}'>±Û¾²±â</a> <!-- BEGIN btn_delete --> <span style='cursor:hand' onclick='DeleteRow()'>»èÁ¦ </span> <!-- À̹ÌÁöÀÏ °æ¿ì : <img src='{SKIN}/images/btn_delete.gif' border=0 style='cursor:hand' onclick='DeleteRow()'> --> <!-- END btn_delete --> -------------------------------------------------- (5) °Ë»ö -------------------------------------------------- <form name=search_form > <input type='hidden' name='tb' value='{TABLENAME}'> <input type='hidden' name='tId' value='{TABLEID}'> <input type='hidden' name='ct' value='{CATEGORYVALUE}'> {SEARCH_SELECTBOX} <input type=text name='sw' value='{SEARCH_VALUE}' class='forms' style='width:120'> </form> -------------------------------------------------- (6) ÆäÀÌ¡ ¹øÈ£ : -------------------------------------------------- {PAGENUMBER} -------------------------------------------------- 6) BoardView.ihtml ¿¡¼ ¹Ýµå½Ã Æ÷ÇԵǾî¾ßÇÏ´Â ºÎºÐ (1) View ¿ë ÀÚ¹Ù½ºÅ©¸³Æ® Æ÷ÇÔ -------------------------------------------------- <script language='javascript' src='{BOARD_WEB_ROOT}/BoardView.js'></script> -------------------------------------------------- (2) ±Û ÀÔ·Â Á¤º¸ -------------------------------------------------- ¹øÈ£ : {ID} ÀÛ¼ºÀÏ : {WDATE} Á¶È¸¼ö : {HIT} ÀÛ¼ºÀÚ : {NAME} À̸ÞÀÏ : {EMAIL} ȨÆäÀÌÁö : {HOMEPAGE} Á¦¸ñ : {SUBJECT} ³»¿ä : {CONTENTS} »èÁ¦ : <form method=post> <input type='hidden' name='command' value='DeleteData'> <input type="password" name="Passwd" style="width:65px;" class=forms> <input type=image src="{SKIN}/images/view_del_btn.gif" onclick="return confirm('Á¤¸»»èÁ¦ÇϽðڽÀ´Ï±î?')" > <!-- ÅØ½ºÀÏ °æ¿ì : <input type=submit onclick="return confirm('Á¤¸»»èÁ¦ÇϽðڽÀ´Ï±î?')" value='»èÁ¦'> --> </form> IP : {IP} <br> -------------------------------------------------- (3) ÆÄÀÏ ¾÷·Îµå -------------------------------------------------- <!-- BEGIN uploadlist --> <table border=1 cellpadding=0 cellspacing=0> <tr> <td ></td> <td >¹øÈ£</td> <td >ÆÄÀÏÀ̸§</td> <td >ÆÄÀÏÅ©±â</td> <td >´Ù¿î·Îµå¼ö</td> </tr> <!-- BEGIN row --> <tr> <td ></td> <td >{ROWNUM}</td> <td ><a href='BoardDownLoad.php?uid={UPLOADID}&{DEFAULTPARAM}'>{FILENAME}</a></td> <td >{FILESIZE}</td> <td >{DOWNLOAD}</td> </tr> <!-- END row --> <!-- BEGIN empty --> <tr> <td colspan=5 align=center> <p> ¾÷·Îµå ÆÄÀÏÀº ¾ø½À´Ï´Ù.</p> </td> </tr> <!-- END empty --> </table> <!-- END uploadlist --> -------------------------------------------------- (4) ¸µÅ© Á¤º¸ -------------------------------------------------- ¸®½ºÆ® : <a href='./BoardList.php?{DEFAULTPARAM}'>¸µÅ©</a><br> ¼öÁ¤ : <a href='BoardWrite.php?tId={TID}&{DEFAULTPARAM}'>¼öÁ¤</a><br> ´äº¯ : <!-- BEGIN reply --> <a href='BoardWrite.php?tId={TID}&rf=t&{DEFAULTPARAM}'>´äº¯</a><br> <!-- END reply --> ±Û¾²±â : <a href='BoardWrite.php?{DEFAULTPARAM}'>±Û¾²±â</a><br> -------------------------------------------------- (5) ´ñ±Û Á¤º¸ -------------------------------------------------- <form name=Comment method=post> <input type=hidden name='command' value=''> <input type=hidden name='CIdx' value=''> <input type=hidden name='CommandDeletePasswd' value=''> <!-- BEGIN datcomment --> ÀÛ¼ºÀÚ : {WRITER} <br> ÀÛ¼ºÀÏ : {REGDATE} <br> »èÁ¦ ¹öư : <img style='cursor:hand' src='{SKIN}/images/view_del_btn.gif' onclick="return ViewDeleteCommentLayer('{CIDX}', 320)" ><br> <!-- ¹öưÀϰæ¿ì : <input type=button value='»èÁ¦' onclick="return ViewDeleteCommentLayer('{CIDX}', 320)" > ViewDeleteCommentLayer('{CIDX}', 320) ¿©±â¿¡¼ 320ÀÇ »èÁ¦ ·¹À̾ º¸ÀÌ°Ô µÉ left °ª ÀÔ´Ï´Ù. --> ´ñ±Û : {DATCOMMENT}<br><br> <!-- END datcomment --> ´ñÀ» ÀÔ·Â : <textarea name=DatComment ></textarea><br> ÀÛ¼ºÀÚ : <input name=Writer value="{USERNAME}" size=10 maxlength=10 > ºñ¹Ð¹øÈ£ : <input type=password name=Passwd size=10 maxlength=10 > ÀÔ·Â ¹öư : <input type=image src='{SKIN}/images/confirm.gif' value='ÀÔ·Â' onclick="return CheckComment()"> <!-- ¹öưÀϰæ¿ì : <input type=submit value='ÀÔ·Â' onclick="return CheckComment()"> --> </form> -------------------------------------------------- (6) ´ñ±Û »èÁ¦ Layer ³¡ -------------------------------------------------- <div Id=CommentDeleteLayer style='visibility:hidden;POSITION: absolute;'> <input Id=IsAdmin value='{ISADMIN}' type=hidden> <input Id=CheckCommentPasswd type=password name=DelPasswd size=10 maxlength=10 class=forms> <input type=image src='{SKIN}images/com_confirm.gif' onclick='DeleteComment(this)' valign=middle> <img style='cursor:hand' src='{SKIN}/image/com_cancel.gif' onclick='CancelDeleteComment()'> </div> -------------------------------------------------- 7) BoardWrite.ihtml (1) View ¿ë ÀÚ¹Ù½ºÅ©¸³Æ® -------------------------------------------------- <script language='javascript' src='{BOARD_WEB_ROOT}/BoardWrite.js'></script> -------------------------------------------------- (2) °Ô½Ã¹° ³»¿ë -------------------------------------------------- <form name="BoardWrite" method=post enctype='multipart/form-data'> <input type=hidden name='command' value='{COMMAND}'> ÀÛ¼ºÀÚ : <input type="Text" name="Name" value="{NAME}" maxlength=10 {NAMEREADONLY} > <br> E-Mail : <input type="Text" name="EMailID" value="{EMAILID}" maxlength=30 > @<input type="Text" name="EMailServer" value="{EMAILSERVER}" maxlength=45><br> ȨÆäÀÌÁö : <input type="Text" name="Homepage" value="{HOMEPAGE}" maxlength=250><br> Á¦¸ñ : <input type="Text" name="Subject" value="{SUBJECT}" maxlength=200> {CATEGORY}<br> ³»¿ë : <textarea name='Contents' rows="15" cols="74" >{CONTENTS}</textarea><br> ÆÐ½º¿öµå : <input type="password" name="Passwd"" maxlength=10><br> html »ç¿ë : <input type="checkbox" name="ViewHtml" value="{VIEWHTML}" {VIEWCHECKED} ><br> TopOrder : {TOPORDER}<br> -------------------------------------------------- (3) ¾÷·Îµå -------------------------------------------------- <!-- BEGIN upload --> <table border=1 cellpadding=0 cellspacing=0 height=24> <!-- BEGIN row --> <tr> <td width=83 align=center><input type=checkbox name=DeleteId[] value='{UPLOADID}'></td> <td width=52 align=center>{ROWNUM}</td> <td width=266 align=center>{FILENAME}</td> <td width=77 align=center>{FILESIZE}</td> <td width=60 align=center>{DOWNLOAD}</td> </tr> <!-- END row --> <!-- BEGIN empty --> <tr> <td colspan=5 align=center bgcolor="#F2F2EE"> <p> ¾÷·Îµå ÆÄÀÏÀº ¾ø½À´Ï´Ù.</p> </td> </tr> <!-- END empty --> </table> <!-- BEGIN addupload --> <table border=1 cellpadding=0 cellspacing=0 id=UploadTable> <tr> <td > <input type="file" name="uploadfile[]" value="" > </td> </tr> </table> <span onclick="return AddUpload('{UPLOAD_MAX}')" style='cursor:hand' >¾÷·Îµå Ãß°¡</span> <!-- À̹ÌÁö <img style='cursor:hand' src="{SKIN}/images/write_addplus.gif" onclick="return AddUpload('{UPLOAD_MAX}')"> button <input type=submit value='¾÷·Îµå Ãß°¡' onclick="return AddUpload('{UPLOAD_MAX}')"> Text <span onclick="return AddUpload('{UPLOAD_MAX}')" style='cursor:hand' >¾÷·Îµå Ãß°¡</span> --> <span onclick="return RemoveUpload()" style='cursor:hand' >¾÷·Îµå Á¦°Å</span> <!-- À̹ÌÁö <img style='cursor:hand' src="{SKIN}/image/write_addminus.gif" onFocus="this.blur();" onclick="return RemoveUpload()"> button <input type=submit value='¾÷·Îµå Á¦°Å ' onclick="return RemoveUpload()"> Text <span onclick="return RemoveUpload()" style='cursor:hand' >¾÷·Îµå Á¦°Å</span> --> <!-- END addupload --> <!-- END upload --> -------------------------------------------------- (4) ¹öư ¸µÅ© -------------------------------------------------- <input type=image src="{SKIN}/images/write_ok.gif" onFocus="this.blur();" onclick="return CheckBoardInput({ADMINFLAG}, {UPDATEFLAG})"> <input type=image src="{SKIN}/images/write_cancel.gif" onFocus="this.blur();" onclick="javascript: this.form.reset(); return false;"> <a onFocus="this.blur();" href='./BoardList.php?{DEFAULTPARAM}'>¸®½ºÆ®</a> <a onFocus="this.blur();" href='javascript: history.back()'>ÀÌÀüÆäÀÌÁö</a> </form> --------------------------------------------------