메인에서 검색이 안되고 bbs/search.php 정보
메인에서 검색이 안되고 bbs/search.php
본문
메인의 소스는 아래와 같습니다.
메인에서 검색을 하면 검색결과가 아무것도 나오지 않습니다.
bbs/search.php 로 넘어가야 검색이 되는 문제는 아마도 메인의 아래 소스 때문이지 않나 생각합니다.
고수님들께 질문 드립니다.
어떻게 소스를 수정해야 될런지요 ?
<table cellspacing='0' cellpadding='0' border='0'>
<form name='fsearchbox' method='get' action='javascript:fsearchbox_submit(document.fsearchbox);'>
<tr>
<?if(!$sfl){?><input type='hidden' name='sfl' value='wr_subject||wr_content'><?}?>
<input type='hidden' name='sop' value='and'>
<td>
<?
$text_stx = get_text(stripslashes($stx));
?>
<select id='gr_id' name='gr_id' class=select>
<option value=''>통합검색</option>
<?
if($config[cf_home_ex_search_use] == 1) $home_ex_search = $config[cf_home_ex_search];
else $home_ex_search = "''";
$text_stx = get_text(stripslashes($stx));
$excgr = "(".$home_ex_search.")";
$sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, a.gr_10, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0' and a.gr_id not in " . $excgr . " ORDER BY a.gr_admin";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++){
?>
<option value='<?=$row['gr_id']?>'><?=$row['gr_subject']?></option>
<?}?>
</select>
<?=$group_select?>
</td>
<td width='5'></td>
<?if($s_menu == "search"){?>
<td>
<select name=sfl>
<option value='wr_subject||wr_content'>제목+내용</option>
<option value='wr_subject'>제목</option>
<option value='wr_content'>내용</option>
<option value='wr_id'>아이디</option>
<option value='wr_name'>이름</option>
</select>
</td>
<?}?>
<td width='5'></td>
<td><INPUT name='stx' maxlength='100' style='<?if($s_menu == "index"){ echo "width:300px;";}else if($s_menu == "search"){ echo "width:210px;";}?>height:21;' tabIndex=1 class=ed trim value='<?=$text_stx?>'></td>
<td width='5'></td>
<td width='28' align='right'>
<script type='text/javascript'>
document.fsearchbox.gr_id.value = "<?=$gr_id?>";
document.fsearchbox.sfl.value = "<?=$sfl?>";
function fsearchbox_submit(f)
{
if (f.stx.value == '')
{
alert('검색어를 입력하세요.');
f.stx.select();
f.stx.focus();
return;
}
/*
// 검색에 많은 부하가 걸리는 경우 이 주석을 제거하세요.
var cnt = 0;
for (var i=0; i<f.stx.value.length; i++)
{
if (f.stx.value.charAt(i) == ' ')
cnt++;
}
if (cnt > 1)
{
alert('빠른 검색을 위하여 검색어에 공백은 한개만 입력할 수 있습니다.');
f.stx.select();
f.stx.focus();
return;
}
*/
f.action = '<?=$g4[bbs_path]?>/search.php';
f.submit();
}
</script>
<input type=image src='<?=$main_skin_path?>/img/btn_search.gif' tabindex=3 style='width:55px;height:25px' title='검색' onmouseover=this.src='<?=$main_skin_path?>/img/btn_search2.gif' onmouseout=this.src='<?=$main_skin_path?>/img/btn_search.gif' onmousedown=this.src='<?=$main_skin_path?>/img/btn_search3.gif' alt='검색' onfocus='this.blur();'></td></tr>
<tr><td></td></tr></form>
</table>
메인에서 검색을 하면 검색결과가 아무것도 나오지 않습니다.
bbs/search.php 로 넘어가야 검색이 되는 문제는 아마도 메인의 아래 소스 때문이지 않나 생각합니다.
고수님들께 질문 드립니다.
어떻게 소스를 수정해야 될런지요 ?
<table cellspacing='0' cellpadding='0' border='0'>
<form name='fsearchbox' method='get' action='javascript:fsearchbox_submit(document.fsearchbox);'>
<tr>
<?if(!$sfl){?><input type='hidden' name='sfl' value='wr_subject||wr_content'><?}?>
<input type='hidden' name='sop' value='and'>
<td>
<?
$text_stx = get_text(stripslashes($stx));
?>
<select id='gr_id' name='gr_id' class=select>
<option value=''>통합검색</option>
<?
if($config[cf_home_ex_search_use] == 1) $home_ex_search = $config[cf_home_ex_search];
else $home_ex_search = "''";
$text_stx = get_text(stripslashes($stx));
$excgr = "(".$home_ex_search.")";
$sql = " SELECT a.gr_id, a.gr_subject, a.gr_use_access, a.gr_10, b.mb_id FROM $g4[group_table] AS a LEFT JOIN $g4[group_member_table] AS b ON a.gr_id = b.gr_id WHERE (b.mb_id = '$member[mb_id]' AND a.gr_use_access = '1' ) OR a.gr_use_access = '0' and a.gr_id not in " . $excgr . " ORDER BY a.gr_admin";
$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++){
?>
<option value='<?=$row['gr_id']?>'><?=$row['gr_subject']?></option>
<?}?>
</select>
<?=$group_select?>
</td>
<td width='5'></td>
<?if($s_menu == "search"){?>
<td>
<select name=sfl>
<option value='wr_subject||wr_content'>제목+내용</option>
<option value='wr_subject'>제목</option>
<option value='wr_content'>내용</option>
<option value='wr_id'>아이디</option>
<option value='wr_name'>이름</option>
</select>
</td>
<?}?>
<td width='5'></td>
<td><INPUT name='stx' maxlength='100' style='<?if($s_menu == "index"){ echo "width:300px;";}else if($s_menu == "search"){ echo "width:210px;";}?>height:21;' tabIndex=1 class=ed trim value='<?=$text_stx?>'></td>
<td width='5'></td>
<td width='28' align='right'>
<script type='text/javascript'>
document.fsearchbox.gr_id.value = "<?=$gr_id?>";
document.fsearchbox.sfl.value = "<?=$sfl?>";
function fsearchbox_submit(f)
{
if (f.stx.value == '')
{
alert('검색어를 입력하세요.');
f.stx.select();
f.stx.focus();
return;
}
/*
// 검색에 많은 부하가 걸리는 경우 이 주석을 제거하세요.
var cnt = 0;
for (var i=0; i<f.stx.value.length; i++)
{
if (f.stx.value.charAt(i) == ' ')
cnt++;
}
if (cnt > 1)
{
alert('빠른 검색을 위하여 검색어에 공백은 한개만 입력할 수 있습니다.');
f.stx.select();
f.stx.focus();
return;
}
*/
f.action = '<?=$g4[bbs_path]?>/search.php';
f.submit();
}
</script>
<input type=image src='<?=$main_skin_path?>/img/btn_search.gif' tabindex=3 style='width:55px;height:25px' title='검색' onmouseover=this.src='<?=$main_skin_path?>/img/btn_search2.gif' onmouseout=this.src='<?=$main_skin_path?>/img/btn_search.gif' onmousedown=this.src='<?=$main_skin_path?>/img/btn_search3.gif' alt='검색' onfocus='this.blur();'></td></tr>
<tr><td></td></tr></form>
</table>
댓글 전체

어디서 검색할건지가 지정이 안돼서 그런 것 같네요.
<input type="hidden" name="sfl" value="wr_subject||wr_content" />
이걸 <form></form> 안에 한 줄 추가해주세요
<input type="hidden" name="sfl" value="wr_subject||wr_content" />
이걸 <form></form> 안에 한 줄 추가해주세요

4번째줄에 있는데요...
<?if(!$sfl){?><input type='hidden' name='sfl' value='wr_subject||wr_content'><?}?>
<?if(!$sfl){?><input type='hidden' name='sfl' value='wr_subject||wr_content'><?}?>

document.fsearchbox.sfl.value = "<?=$sfl?>";
여기서 $sfl 값을 날려버리는 것 같습니다. 그 줄을 주석처리하면 일단은 될 듯..
여기서 $sfl 값을 날려버리는 것 같습니다. 그 줄을 주석처리하면 일단은 될 듯..

//document.fsearchbox.sfl.value = "<?=$sfl?>";
주석처리해도 결과는 마찬가지입니다....
주석처리해도 결과는 마찬가지입니다....

//document.fsearchbox.gr_id.value = "<?=$gr_id?>";
//document.fsearchbox.sfl.value = "<?=$sfl?>";
요거 2개 다 주석처리해야 정상처리됩니다.
말러83님 감사드립니다.
//document.fsearchbox.sfl.value = "<?=$sfl?>";
요거 2개 다 주석처리해야 정상처리됩니다.
말러83님 감사드립니다.