검색 폼 수정에 대하여, 답변 부탁드립니다. 정보
그누보드 검색 폼 수정에 대하여, 답변 부탁드립니다.본문
검색폼 셀렉트에 대해서 문의를 드리고자 합니다.
개인 적으로는 셀렉트가 좋아 보이는데, 그냥 스킨 하나 만들어 보려고 합니다.
게시판 아래 검색 폼에서 검색 필드선택이 셀렉트로 되어 있는 것을 버튼으로 만들어볼까해서요.
그러니깐 lib.php 와 gblist.php 수정 없이 스킨으로만 셀렉트를 버튼(다중선택)으로 구현할 수 있을까요?
gblist.tail.slin.php 파일에서,
검색 필드 value를 변수 $value로 두고,
<script>
주제, 내용, 이름
on/off 버튼 교환 스크립트
</script>
<?
만약 주제=on && 내용=off && 이름=off
일때 $value="wr_subject"
만약 주제=on && 내용=on && 이름=off
일때 $value="wr_subject|wr_content"
만약 주제=off && 내용=on && 이름=off
일때 $value="wr_content"
......
?>
<form>
<input type=hidden .. value=$value>
주제 버튼
제목 버튼
내용 버튼
</form>
대충 이런식으로 해서 스킨만으로 셀렉트를 버튼으로 바꿀 수 있는지.. 답변 부탁 드립니다.
개인 적으로는 셀렉트가 좋아 보이는데, 그냥 스킨 하나 만들어 보려고 합니다.
게시판 아래 검색 폼에서 검색 필드선택이 셀렉트로 되어 있는 것을 버튼으로 만들어볼까해서요.
그러니깐 lib.php 와 gblist.php 수정 없이 스킨으로만 셀렉트를 버튼(다중선택)으로 구현할 수 있을까요?
gblist.tail.slin.php 파일에서,
검색 필드 value를 변수 $value로 두고,
<script>
주제, 내용, 이름
on/off 버튼 교환 스크립트
</script>
<?
만약 주제=on && 내용=off && 이름=off
일때 $value="wr_subject"
만약 주제=on && 내용=on && 이름=off
일때 $value="wr_subject|wr_content"
만약 주제=off && 내용=on && 이름=off
일때 $value="wr_content"
......
?>
<form>
<input type=hidden .. value=$value>
주제 버튼
제목 버튼
내용 버튼
</form>
대충 이런식으로 해서 스킨만으로 셀렉트를 버튼으로 바꿀 수 있는지.. 답변 부탁 드립니다.
댓글 전체
음..
그건 lib.php를 수정해야지만 구현할 수 있는 것으로 보입니다.
제 머리의 한계일지도 모르겠지만..
암튼 지금과 같은 그누보드의 방법에서 DB로부터 검색어를 불러오는 영역을 선택하는 부분은
이부분 밖에 없는 것으로 보입니다.
그리고 한번만 감사하셔도 되요.. 부담되거덩요.. 으흐흐
이제 진짜 자야지~
그건 lib.php를 수정해야지만 구현할 수 있는 것으로 보입니다.
제 머리의 한계일지도 모르겠지만..
암튼 지금과 같은 그누보드의 방법에서 DB로부터 검색어를 불러오는 영역을 선택하는 부분은
이부분 밖에 없는 것으로 보입니다.
그리고 한번만 감사하셔도 되요.. 부담되거덩요.. 으흐흐
이제 진짜 자야지~
지금 생각으로는요..
lip.php 파일 수정 없이 스킨으로만 지금 셀렉트와 같은 기능 하게 만들려구요.
구러니깐 '이름' 체크박스에 클릭을 하면 '제목과 내용' 체크박스는 비활성화 되고...
이렇게 하면 물론 다중 선택의 의미는 없어지지만.. 일단 일케 해보겠습니다.
소스 다시한면 감사 드립니다.
lip.php 파일 수정 없이 스킨으로만 지금 셀렉트와 같은 기능 하게 만들려구요.
구러니깐 '이름' 체크박스에 클릭을 하면 '제목과 내용' 체크박스는 비활성화 되고...
이렇게 하면 물론 다중 선택의 의미는 없어지지만.. 일단 일케 해보겠습니다.
소스 다시한면 감사 드립니다.
테이푸가위님 감사합니다.
제가 그누보드 잘 쓰고 뭐 한 것이 없어서요, 스킨이라도 하나 만들려고 했는데..
스크립트 까막눈이라...
지금 새벽 3시40분 지나고 있는데요..
자바 기초 공부하고 있었습니다.
좋은 하루 되십시오.
제가 그누보드 잘 쓰고 뭐 한 것이 없어서요, 스킨이라도 하나 만들려고 했는데..
스크립트 까막눈이라...
지금 새벽 3시40분 지나고 있는데요..
자바 기초 공부하고 있었습니다.
좋은 하루 되십시오.
테스트를 해 봤는데..
다중 검색되는 것은 그누보드 자체 소스에서 두가지 이상 검색은 제목과 내용을 or로 검색을 하는 바람에
그거는 그냥 다른 곳에 영향을 받지 않게 하려고 두고요,
'내용과 이름', '제목과 이름', '제목과 내용과 이름'에 대해서만 and 검색을 할 수 있도록 수정해 주셔야 할 것 같습니다.
lib.php에서 function get_sql_search()를 아래와 같이 수정하시면 됩니다.
------------------------------------------------------------------
function get_sql_search($field, $stext)
{
$str = " and ( ";
switch ($field) {
case "wr_subject|wr_content|wr_name" :
$str .= " (wr_subject like '%$stext%' and wr_content like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_subject|wr_name" :
$str .= " (wr_subject like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_content|wr_name" :
$str .= " (wr_content like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_subject|wr_content" :
$str .= " (wr_subject like '%$stext%' or wr_content like '%$stext%') ";
break;
case "ca_id" :
$str .= " ($field = '$stext') ";
break;
case "wr_hit" :
case "wr_good" :
case "wr_nogood" :
$str .= " ($field >= '$stext') ";
break;
case "wr_num" :
$str .= " ($field = ".((-1)*$stext).") ";
break;
default :
$str .= " ($field like '%$stext%') ";
break;
}
$str .= " ) ";
return $str;
}
------------------------------------------------------------------
겜 할라고 했는데 졸려서 이제 자야겠네요.. -_ㅜ
좀 더 자세하게 버그를 살펴봐야 겠는데 눈이 안 떠지네요..
겜도 못하고.. 우잉 ㅠ__ㅠ
다중 검색되는 것은 그누보드 자체 소스에서 두가지 이상 검색은 제목과 내용을 or로 검색을 하는 바람에
그거는 그냥 다른 곳에 영향을 받지 않게 하려고 두고요,
'내용과 이름', '제목과 이름', '제목과 내용과 이름'에 대해서만 and 검색을 할 수 있도록 수정해 주셔야 할 것 같습니다.
lib.php에서 function get_sql_search()를 아래와 같이 수정하시면 됩니다.
------------------------------------------------------------------
function get_sql_search($field, $stext)
{
$str = " and ( ";
switch ($field) {
case "wr_subject|wr_content|wr_name" :
$str .= " (wr_subject like '%$stext%' and wr_content like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_subject|wr_name" :
$str .= " (wr_subject like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_content|wr_name" :
$str .= " (wr_content like '%$stext%' and wr_name like '%$stext%') ";
break;
case "wr_subject|wr_content" :
$str .= " (wr_subject like '%$stext%' or wr_content like '%$stext%') ";
break;
case "ca_id" :
$str .= " ($field = '$stext') ";
break;
case "wr_hit" :
case "wr_good" :
case "wr_nogood" :
$str .= " ($field >= '$stext') ";
break;
case "wr_num" :
$str .= " ($field = ".((-1)*$stext).") ";
break;
default :
$str .= " ($field like '%$stext%') ";
break;
}
$str .= " ) ";
return $str;
}
------------------------------------------------------------------
겜 할라고 했는데 졸려서 이제 자야겠네요.. -_ㅜ
좀 더 자세하게 버그를 살펴봐야 겠는데 눈이 안 떠지네요..
겜도 못하고.. 우잉 ㅠ__ㅠ
오옷!
후하~
감사합니다.
테이푸가위님 멋있어요.
소스 잘 쓰겠습니다.
좋은 하루 되십시오~
성공하면 다시 리플 달겠습니다.
후하~
감사합니다.
테이푸가위님 멋있어요.
소스 잘 쓰겠습니다.
좋은 하루 되십시오~
성공하면 다시 리플 달겠습니다.
유심히 봤더니.. 다중 선택 하는 것을 원하시는 것이 질문이셨네요..
왜 이렇게 요점 파악을 못하는지.. 이거 원..
간단하게 텍스트로 구성했으니 이미지 버튼은 손수 해보세요.. ^_^ㆀ
gblist.tail.skin.php에서 검색 태그 영역에 <form> </form> 부분을 이것으로 교체하시면 됩니다.
------------------------------------------------------------------------
<script>
function chk_type(form) {
if (form.chk_subject.checked == true && form.chk_content.checked == false && form.chk_name.checked == false)
form.sselect.value = 'wr_subject';
else if (form.chk_subject.checked == false && form.chk_content.checked == true && form.chk_name.checked == false)
form.sselect.value = 'wr_content';
else if (form.chk_subject.checked == false && form.chk_content.checked == false && form.chk_name.checked == true)
form.sselect.value = 'wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == true && form.chk_name.checked == false)
form.sselect.value = 'wr_subject|wr_content';
else if (form.chk_subject.checked == false && form.chk_content.checked == true && form.chk_name.checked == true)
form.sselect.value = 'wr_content|wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == false && form.chk_name.checked == true)
form.sselect.value = 'wr_subject|wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == true && form.chk_name.checked == true)
form.sselect.value = 'wr_subject|wr_content|wr_name';
else {
alert("검색할 영역을 한개 이상 선택해 주십시오.");
return false;
}
}
</script>
<form name=fsearch method=get action='gnuboard.php' onsubmit='return chk_type(this);'>
<input type=hidden name=bo_table value='<?=$bo_table?>'>
<input type=hidden name=sselect value=''>
<td align=center colspan=3>
<input name=chk_subject type=checkbox value='wr_subject'>제목</option>
<input name=chk_content type=checkbox value='wr_content'>내용</option>
<input name=chk_name type=checkbox value='wr_name'>이름</option>
<input type=text name=stext style='width:90;height:20;border:solid 1;background-color:white;border-color:#818080;color:#000000' required itemname='검색어' value='<?=$stext?>' class=input> <input type=submit onfocus=blur() align=absmiddle value='검 색'>
</td>
</form>
------------------------------------------------------------------------
중요 파일은 수정하지 않도록 하고 스킨으로만 구현하려고 하다보니
검색할 때 URL에 chk_subject, chk_content, chk_name의 값이 따라 붙는 점이 좀..
왜 이렇게 요점 파악을 못하는지.. 이거 원..
간단하게 텍스트로 구성했으니 이미지 버튼은 손수 해보세요.. ^_^ㆀ
gblist.tail.skin.php에서 검색 태그 영역에 <form> </form> 부분을 이것으로 교체하시면 됩니다.
------------------------------------------------------------------------
<script>
function chk_type(form) {
if (form.chk_subject.checked == true && form.chk_content.checked == false && form.chk_name.checked == false)
form.sselect.value = 'wr_subject';
else if (form.chk_subject.checked == false && form.chk_content.checked == true && form.chk_name.checked == false)
form.sselect.value = 'wr_content';
else if (form.chk_subject.checked == false && form.chk_content.checked == false && form.chk_name.checked == true)
form.sselect.value = 'wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == true && form.chk_name.checked == false)
form.sselect.value = 'wr_subject|wr_content';
else if (form.chk_subject.checked == false && form.chk_content.checked == true && form.chk_name.checked == true)
form.sselect.value = 'wr_content|wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == false && form.chk_name.checked == true)
form.sselect.value = 'wr_subject|wr_name';
else if (form.chk_subject.checked == true && form.chk_content.checked == true && form.chk_name.checked == true)
form.sselect.value = 'wr_subject|wr_content|wr_name';
else {
alert("검색할 영역을 한개 이상 선택해 주십시오.");
return false;
}
}
</script>
<form name=fsearch method=get action='gnuboard.php' onsubmit='return chk_type(this);'>
<input type=hidden name=bo_table value='<?=$bo_table?>'>
<input type=hidden name=sselect value=''>
<td align=center colspan=3>
<input name=chk_subject type=checkbox value='wr_subject'>제목</option>
<input name=chk_content type=checkbox value='wr_content'>내용</option>
<input name=chk_name type=checkbox value='wr_name'>이름</option>
<input type=text name=stext style='width:90;height:20;border:solid 1;background-color:white;border-color:#818080;color:#000000' required itemname='검색어' value='<?=$stext?>' class=input> <input type=submit onfocus=blur() align=absmiddle value='검 색'>
</td>
</form>
------------------------------------------------------------------------
중요 파일은 수정하지 않도록 하고 스킨으로만 구현하려고 하다보니
검색할 때 URL에 chk_subject, chk_content, chk_name의 값이 따라 붙는 점이 좀..
모르시는게 없다뇨..
아직 모르는게 더 많은 세상입니다.. -_-ㆀ
아직 모르는게 더 많은 세상입니다.. -_-ㆀ
하하 감사합니다..
모르시는게 업군요..
최강그누보드..
모르시는게 업군요..
최강그누보드..
음... 굉장한 핵심을 찌르시는 수경님.. -_-;
제목+내용에 해당하는 input 태그 안에 checked를 추가해 주시면 됩니다.
이렇게요..
<input name=sselect type=radio value='wr_subject|wr_content' checked>제목+내용
제목+내용에 해당하는 input 태그 안에 checked를 추가해 주시면 됩니다.
이렇게요..
<input name=sselect type=radio value='wr_subject|wr_content' checked>제목+내용
테이푸가위님 잘데네요..
그런데요.. 제목+내용 이걸 채크되있게 할라면 어떻게 하나요..
기본적으로 아무것도 체크 안되있던데요..
보통 다른데 보면 한곳은 기본 적으로 체크 되있지않습니까?
최강그누보드
그런데요.. 제목+내용 이걸 채크되있게 할라면 어떻게 하나요..
기본적으로 아무것도 체크 안되있던데요..
보통 다른데 보면 한곳은 기본 적으로 체크 되있지않습니까?
최강그누보드
gblist.tail.skin.php에서 검색 태그 영역에 <form> </form> 부분을 이것으로 교체해 보세요.
라디오 버튼으로 바뀌어서 사용할 수 있으실 것입니다.
<form name=fsearch method=get action='gnuboard.php'>
<input type=hidden name=bo_table value='<?=$bo_table?>'>
<td align=center colspan=3>
<input name=sselect type=radio value='wr_subject|wr_content'>제목+내용
<input name=sselect type=radio value='wr_subject'>제목</option>
<input name=sselect type=radio value='wr_content'>내용</option>
<input name=sselect type=radio value='wr_name'>이름</option>
<input type=text name=stext style='width:90;height:20;border:solid 1;background-color:white;border-color:#818080;color:#000000' required itemname='검색어' value='<?=$stext?>' class=input> <input type=submit onfocus=blur() align=absmiddle value='검 색'>
</td>
</form>
라디오 버튼으로 바뀌어서 사용할 수 있으실 것입니다.
<form name=fsearch method=get action='gnuboard.php'>
<input type=hidden name=bo_table value='<?=$bo_table?>'>
<td align=center colspan=3>
<input name=sselect type=radio value='wr_subject|wr_content'>제목+내용
<input name=sselect type=radio value='wr_subject'>제목</option>
<input name=sselect type=radio value='wr_content'>내용</option>
<input name=sselect type=radio value='wr_name'>이름</option>
<input type=text name=stext style='width:90;height:20;border:solid 1;background-color:white;border-color:#818080;color:#000000' required itemname='검색어' value='<?=$stext?>' class=input> <input type=submit onfocus=blur() align=absmiddle value='검 색'>
</td>
</form>