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

카테고리별 쿼리문 문의드립니다 채택완료

Darcy 8년 전 조회 2,939

몇일동안 쿼리문하고 씨름하다가 결국에는 문의드립니다.

요일별로 쿼리문을 만들어도 제가 잘못한건지 계속 리스트 전체를 불러옵니다

요일별 카테고리를 불러올려고하는데 잘안되네요

예)월|화|수|목 있으면 화요일 카테고리에 있는 리스트를 불러오고싶습니다

고수님들의 많은 가르침을 기다리고 있겠습니다

</p><p><?php</p><p>if(!defined("_GNUBOARD_")) exit("Access Denied");</p><p>
</p><p>include_once("lib/cmm.lib.php");</p><p>include_once("lib/filedir.php");</p><p>include_once("lib/imageutil.php");</p><p>include_once("lib/thumbnail.php");</p><p>
</p><p>ini_set("display_errors", true);</p><p>
</p><p>
</p><p>$aq = array();</p><p>$aw = array();</p><p>
</p><p>
</p><p>//카테고리 선택했을때</p><p>if($wt_sca){</p><p><span style="white-space:pre">	</span>$aw[] = "wt_sca='".$wt_sca."'";</p><p><span style="white-space:pre">	</span>$aq['wt_sca'] = $wt_sca;</p><p>}</p><p>
</p><p>//연재중, 완결 선택때</p><p>
</p><p>if(isset($wt_fin)){</p><p><span style="white-space:pre">	</span>$aw[] = "wt_fin='".$wt_fin."'";</p><p><span style="white-space:pre">	</span>$aq['wt_fin'] = $wt_fin;</p><p>}</p><p>
</p><p>//웹툰 검색일때</p><p>if($wt_title){</p><p><span style="white-space:pre">	</span>$titles = explode(' ', $wt_title);</p><p><span style="white-space:pre">	</span>$titles = array_map('trim', $titles);</p><p><span style="white-space:pre">	</span>for($i=0;$i<count($titles);$i++){</p><p><span style="white-space:pre">		</span>$titles[$i] = "INSTR(wt_title, '".$titles[$i]."')";</p><p><span style="white-space:pre">	</span>}</p><p><span style="white-space:pre">	</span></p><p><span style="white-space:pre">	</span>$aw[] = implode(" AND ", $titles);</p><p><span style="white-space:pre">	</span>$aq['wt_title'] = $wt_title;</p><p>
</p><p>//웹툰을 선택했을때</p><p>}else if($sca){</p><p><span style="white-space:pre">	</span>$aw[] = "wt_idx='".$sca."'";</p><p>}</p><p>
</p><p>if($wt_cho){</p><p>    $aw[] = "wt_cho='".$wt_cho."'";</p><p>    $aq['wt_cho'] = $wt_cho;</p><p>}</p><p>
</p><p>$wqstr = "";</p><p>if(count($aw)>0) $where = " AND ".@implode(" AND ", $aw);</p><p>if(count($aq)>0) $wqstr = "&".bt_qs_gen($aq);</p><p>
</p><p>$wpage = isset($_GET["wpage"]) && trim($_GET["wpage"]!=="") ? $_GET["wpage"] : '1';</p><p>//게시판에 커버의 페이지번호가 따로붙게 한다</p><p>$qstr .= "&wpage=".$wpage;</p><p>
</p><p>$sql = "SELECT count(*) as cnt FROM bt_webtoon WHERE bo_table='".$bo_table."'".$where;</p><p>$rs = sql_fetch($sql);</p><p>$wtotal_count = $rs["cnt"];</p><p>
</p><p>$wpage_rows = WT_COVER_CNT;</p><p>$wtotal_page  = ceil($wtotal_count / $wpage_rows);  // 전체 페이지 계산</p><p>
</p><p>$wfrom_record = ($wpage - 1) * $wpage_rows; // 시작 열을 구함</p><p>
</p><p>$sql = "SELECT * FROM bt_webtoon WHERE bo_table='".$bo_table."'".$where." ORDER BY wt_idx DESC LIMIT ".$wfrom_record.", ".$wpage_rows;</p><p>$gresult = sql_query($sql);</p><p>
</p><p>$glist = array();</p><p>
</p><p>//크기 고정일 경우 벗어나는 부분 자름</p><p>$a_fix = array();</p><p>if(WT_THUMB_FIX){</p><p>    $a_fix = array(</p><p>        "sizefix" => true,</p><p>        "crop_posx" => BThumbnail::CROP_POSX_CENTER,</p><p>        "crop_posy" => BThumbnail::CROP_POSY_MIDDLE</p><p>    );</p><p>}</p><p>for($i=0;$rs=sql_fetch_array($gresult);$i++){</p><p><span style="white-space:pre">	</span>$rs["a_link"] = G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&sca='.$rs['wt_idx'];</p><p><span style="white-space:pre">	</span>$rs["title"] = $rs["wt_title"];</p><p><span style="white-space:pre">	</span>$rs["thumb"] = "";</p><p><span style="white-space:pre">	</span>if(trim($rs["wt_thumb"])!="" && file_exists(WT_DATA_PATH.'/'.$rs['wt_thumb'])){</p><p>        </p><p><span style="white-space:pre">		</span>list($fname) = BThumbnail::makeThumb(</p><p><span style="white-space:pre">	</span>        WT_DATA_PATH.'/'.$rs["wt_thumb"],</p><p><span style="white-space:pre">	</span>        WT_DATA_PATH,</p><p><span style="white-space:pre">	</span>        WT_THUMB_W, WT_THUMB_H,</p><p><span style="white-space:pre">	</span>        $a_fix</p><p><span style="white-space:pre">		</span>);</p><p>        </p><p><span style="white-space:pre">		</span>$rs["thumb"] = '<img src="'.WT_DATA_URL.'/'.$fname.'">';</p><p><span style="white-space:pre">	</span>}</p><p><span style="white-space:pre">	</span></p><p><span style="white-space:pre">	</span>$glist[] = $rs;</p><p>}</p><p>
</p><p>$grs = $glist[0];</p><p>
</p><p>//===========================================================================</p><p>// 카테고리</p><p>//===========================================================================</p><p>// 분류 사용 여부</p><p>$is_category = false;</p><p>$category_option = '';</p><p>
</p><p>if ($board['bo_use_category']) {</p><p>    $is_category = true;</p><p>    $cate_href = G5_BBS_URL.'/board.php?bo_table='.$bo_table;</p><p>
</p><p>    $cates = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음</p><p>    $cate_cnt = count($cates);</p><p>    $cate_width = sprintf("%.2f", (100 / $cate_cnt));</p><p>
</p><p>    /*$categories = explode('|', $board['bo_category_list']); // 구분자가 , 로 되어 있음</p><p>    $tcnt = count($categories);</p><p>    $width = sprintf("%.2f", (100 / $tcnt));</p><p>    //$style = ' style="width:'.$width.'%; min-width:60px"';</p><p>    </p><p>    $category_option .= '<li'.$style.'><a href="'.$category_href.'"';</p><p>    if ($wt_sca=='')</p><p>        $category_option .= ' class="on"';</p><p>    $category_option .= '>전체</a></li>';</p><p>    </p><p>    for ($i=0; $i<count($categories); $i++) {</p><p>        $category = trim($categories[$i]);</p><p>        if ($category=='') continue;</p><p>        $category_option .= '<li'.$style.'><a href="'.($category_href."&wt_sca=".urlencode($category)).'"';</p><p>        $category_msg = '';</p><p>        if ($category==$wt_sca) { // 현재 선택된 카테고리라면</p><p>            $category_option .= ' class="on"';</p><p>            $category_msg = '<span class="sound_only">열린 분류 </span>';</p><p>        }</p><p>        $category_option .= '>'.$category_msg.$category.'</a></li>';</p><p>    }*/</p><p>}</p><p>
</p><p>include_once($board_skin_path."/cover_list.skin.php");</p><p>

</p><p><ul class="homelist col-8"></p><p><li class="section-title section-title-1">월</li></p><p><li class="section-item section-item-1"></p><p><?php for($i=0;$i<count($glist);$i++){?></p><p><span style="font-size: 11pt;"><div class="section-item-inner"></span> </p><p><div class="section-item-photo"></p><p><div class="toon-summary"></div></p><p><span style="font-size: 11pt;"></div></span></p><p></div></p><p><?php }?></p><p></li></p><p></ul></p><p>

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

답변 1개

채택된 답변
+20 포인트
8년 전

쿼리문 자체에는 문제가 없습니다.

</p><p>...</p><p>//카테고리 선택했을때</p><p>if($wt_sca){</p><p><span style="white-space:pre">	</span>$aw[] = "wt_sca='".$wt_sca."'";</p><p><span style="white-space:pre">	</span>$aq['wt_sca'] = $wt_sca;</p><p>}</p><p>...</p><p>
</p><p>$sql = "SELECT * FROM bt_webtoon WHERE bo_table='".$bo_table."'".$where." ORDER BY wt_idx DESC LIMIT ".$wfrom_record.", ".$wpage_rows;</p><p>$gresult = sql_query($sql);</p><p>

의도했던 대로 카테고리별 리스트가 나오지 않는다면, 다른 부분에서 문제가 있을 가능성이 크지 않을까 합니다.

1) $wt_sca 에 정상적으로 값이 들어가는지 확인해 볼 수 있습니다.

get 변수나 post 변수로 'wc_sca=월' 등으로 호출이 되어야 겠죠.

간단하게는 echo $wt_sca; 로 확인해 볼 수 있을 것입니다.

2) $wt_sca 에는 값이 정상적으로 들어온다면 그다음으로는 쿼리문을 확인해 볼 수 있습니다.

ecoh $sql; 로 확인하여

... SELECT * FROM bt_webtoon WHERE bo_table='[게시판명]' where wt_sca = '월' .. 등으로 나오는지 살펴 볼 수 있습니다.

3) 지금까지 문제가 발견되지 않았다면.. 저장된 DB 자료 자체에 카테고리 정보가 정상적으로 들어가 있는지 확인해 볼 수 있지 않을까 합니다. (bt_webtoon 테이블 데이터 확인)

4) 기타, 가능성은 적다고 생각되지만.. 해당 스킨 제작자의 설명글에 보면..

스킨명을 다른 것으로 변경하는 경우에는 extend/ 에 포함하는 파일 또한 해당 스킨명으로 수정해 주어야 한다는 부분이 있습니다. 스킨명이 변경되는 경우에는 그 부분을 변경해 주지 않으면 해당 스킨 환경설정 파일 config.php 가 인클루드 되지 않는 문제가 생기는 데 그 부분을 체크해 볼 수 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

마르스컴퍼니
8년 전
거기에 대한 답은,

전 질문글의 댓글로 답을 달았으니.. https://sir.kr/qa/203833?vpage=1#c_205210

참고하시면 됩니다.

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

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

로그인