°Ë»ö ±â´É
´ÙÀ½ Äڵ带 °Ô½ÃÆÇ ¸ñ·Ïº¸±â ÆäÀÌÁöÀÇ ÇÏ´Ü¿¡ Ãß°¡ÇÕ´Ï´Ù.
<form id="frmSearch" action="index.jsp" method="post"> <select name="keyfield"> <option value="subject" selected>Á¦¸ñ</option> <option value="content">³»¿ë</option> </select> <input type="text" size="10" maxlength="30" name="key" /> <input type="submit" value="search" /> </form>
°Ë»ö ±â´ÉÀÌ Ãß°¡µÇ¸é °Ë»ö Á¶°Ç¿¡ µû¶ó¼ ÃÑ ·¹ÄÚµå ¼ö°¡ º¯ÈÇϱ⠶§¹®¿¡ ¸ñ·Ïº¸±â ÆäÀÌÁöÀÇ ÃÑ ·¹ÄÚµå ¼ö ±¸ÇÏ´Â ºÎºÐÀ» ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÕ´Ï´Ù.
if ( keyfield.equals("") || key.equals("") ) {
query = "select count(*) from board";
} else {
query = "select count(*) from board where " + keyfield + " like '%" + key + "%'";
}
´ÙÀ½À¸·Î ÇØ´ç ÆäÀÌÁöÀÇ ·¹ÄÚµå ¼ÂÀ» ±¸ÇÑ ÈÄ Ãâ·ÂÇÏ´Â Äõ¸®¸¦ ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÕ´Ï´Ù.
if ( keyfield.equals("") || key.equals("") ) {
query = "SELECT num,subject,wdate " +
"FROM(SELECT ROWNUM R, A.* FROM(" +
"SELECT num,subject,wdate FROM board ORDER BY num DESC) A)" +
"WHERE R BETWEEN " + start + " and " + end;
} else {
query = "SELECT num,subject,wdate " +
"FROM(SELECT ROWNUM R, A.* FROM(" +
"SELECT num,subject,wdate FROM board " +
"WHERE " + keyfield + " LIKE '%" + key + "%' ORDER BY num DESC) A)" +
"WHERE R BETWEEN " + start + " and " + end;
}
ÀÌÁ¦ °Ë»ö ±â´ÉÀÌ Ãß°¡µÈ °Ô½ÃÆÇ ÇÁ·Î±×·¥Àº cur_page ¿Ü¿¡ keyfield, key ¶ó´Â ÆÄ¶ó¹ÌÅͰ¡ Àü´ÞµÇ°Ô ¼öÁ¤ÇÕ´Ï´Ù.
ÇÑ ¿¹·Î, view.jsp ¿¡ cur_page¿Ü¿¡ keyfield, key ¶õ ÆÄ¶ó¹ÌÅͰ¡ Àü´ÞÀÌ µÇ¾î¾ß Çϴµ¥ ÀÌÀ¯´Â
°Ô½Ã¹° º¸±â¸¦ ÇÑ ÈÄ ´Ù½Ã °Ë»ö°á°ú ¸ñ·Ïº¸±â ȸéÀ¸·Î µ¹¾Æ°¡µµ·Ï Çϱâ À§ÇؼÀÔ´Ï´Ù.
keyfield ¿Í key ¸¦ ¹Þ´Â ÄÄÆ÷³ÍÆ®´Â
keyfield ¿Í key °ªÀ¸·Î null ÀÌ µé¾î¿Ã °æ¿ì°¡ ÀÖÀ¸¹Ç·Î ¾Æ·¡¿Í °°ÀÌ null °ªÀ» °ø¹é¹®ÀÚ·Î ¹Ù²Ù´Â Äڵ带 Ãß°¡ÇÕ´Ï´Ù.
String keyfield = request.getParameter("keyfield");
if ( keyfield == null ) keyfield="";
String key = request.getParameter("key");
if ( key == null ) key = "";
ÇѱÛÀÌ Á¦´ë·Î °Ë»öÀÌ µÇµµ·Ï ¸ñ·Ïº¸±â ÆäÀÌÁö »ó´Ü¿¡ request.setCharacterEncoding("euc-kr"); ¸¦ Ãß°¡ÇÕ´Ï´Ù.
request.setCharacterEncoding("euc-kr");
- ´ÙÀ½ °Á : DataSource
- ÀÌÀü °Á : ÆäÀÌÁö Á÷Á¢ À̵¿ ¸µÅ©¼ö Á¦ÇÑ
