테스트 사이트 - 개발 중인 베타 버전입니다

최근게시물 wr_3 로 게시물 검색 문의 드려요 채택완료

공대그녀 11년 전 조회 8,155
안녕하세요 :)
아래는 공지사항을 체크한 게시물만 최근게시물로 불러오는 소스코드 입니다.
여기에 wr_3 값으로도 게시물을 추출하려고 하는데, 잘 안되요.
wr_3값으로 추출을 하면, "게시물이 없습니다."라고 뜨는데, 이유를 잘 모르겠어요.
도움 부탁 드려요.
 
// 최신글 추출 function oneroom_top($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options="", $sca="", $sfl = "", $stx="", $wr_3="") { global $g4;
if ($skin_dir) $latest_skin_path = "$g4[path]/skin/latest/$skin_dir"; else $latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array(); $sql_search = "";
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'"; $board = sql_fetch($sql);
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
  if ($sca || $stx || $wr_3)   {           $sql_search = get_sql_search($sca, $sfl, $stx);           $sql_search = "and ".$sql_search;   }
if($options=='notice'){ $notice_rows=count( split("\n", trim($board[bo_notice]) ) ); if( $rows> $notice_rows) $rows= $notice_rows; $sql = " select * from $tmp_write_table where wr_is_comment = 0 and INSTR('$board[bo_notice]', wr_id)>0 $sql_search order by wr_num limit 0, $rows "; }
$result = sql_query($sql); for ($i=0; $row = sql_fetch_array($result); $i++) $list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start(); include "$latest_skin_path/latest.skin.php"; $content = ob_get_contents(); ob_end_clean();
return $content; } ?>
댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
아~~ 한가지 더 $wr_3 값이 필드를 불러들이는 값이 아니고 input text 로 문자입력이라면
        if($wr_3){
            $sql_search = get_sql_search($sca, $sfl,$wr_3);
            $sql_search = "and ".$sql_search;
        }else{
          $sql_search = get_sql_search($sca, $sfl, $stx);
          $sql_search = "and ".$sql_search;
        } 
이게 맞습니다 
로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

공대그녀
11년 전
와우!!! 깜짝놀랬어요.
아주 잘 됩니다. 대단하세요!ㅎ
진짜 가뭄에 단비같은 답변이세요.ㅠㅠ
정말 감사합니다. 잘 사용할께요.ㅠㅠ
:)
공대그녀
11년 전
불량학생님 하나만 더 문의 드려도 될까요?
$wr_4를 하나 더 추가해서 다중추출을 하려고 하는데요.
아래처럼 했더니, wr_3만 작동을 하는데 wr_4의 값도 함께 반영하여
다중으로 추출하려면 어떻게하면 될까요?

if($wr_3||$wr_4){
$sql_search = get_sql_search($sca, $sfl,$wr_3,$wr_4);
$sql_search = "and ".$sql_search;
}else{
$sql_search = get_sql_search($sca, $sfl, $stx);
$sql_search = "and ".$sql_search;
}

댓글을 작성하려면 로그인이 필요합니다.

wr_3과 wr_4를 동시에 사용하시려면 wr_3 AND wr_4 wr_3 OR wr_4 이렇게 되는건가요? 이런 방식으로 하시려면 get_sql_search() 함수를 수정해야 할 것 같은데요 get_sql_search($sca,$sfl,$wr_3|$wr_4,$search_operator); 함수에서는 이렇게 넣어지 $wr_3과 $wr_4를 explode해서 검색하는 기능을 만드시면 될듯
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

get_sql_search 이전에
 
if($wr_3){
$sfl .= "||".$wr_3;
}
 
$sql_search = get_sql_search($sca, $sfl, $stx);
 
이렇게 slf 뒤에 wr_3도 같이 딸려 보내면? 검색 안되나요;;
 
테스트는 안해봄 ㅡㅡ;
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

공대그녀
11년 전
포인트적립님 답변 감사합니다. :)
if($wr_3){
$sfl .= "||".$wr_3;
}
$sql_search = get_sql_search($sca, $sfl, $stx);
이렇게 적용하였는데, 잘 안되는것 같아요.

댓글을 작성하려면 로그인이 필요합니다.

if문을 이렇게 수정하셔야 하지 않을까요?
  if ($sca || $stx || $wr_3)
  {
        if($wr_3){
            $sql_search = get_sql_search($sca, $wr_3,$stx);
            $sql_search = "and ".$sql_search;
        }else{
          $sql_search = get_sql_search($sca, $sfl, $stx);
          $sql_search = "and ".$sql_search;
        }        
  }
로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

불량학생
11년 전
그리고
/lib/common.lib.php 에서
get_sql_search() 함수에서도 wr_3을 추가를 해줘야 될듯한데요
공대그녀
11년 전
불량학생님 답변 감사드립니다.
적용해보았는데, 아직 게시물이 없다고 나와요.ㅜㅜ
어떻게 해결할 방법이 없을까요?
불량학생
11년 전
$sql_search 값이 어떻게 돌아오는지 echo 찍어보세요
만약 값이 없다면 common.lib.php 파일의 get_sql_search()를 수정하면서 찾으셔야 합니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인