카테고리 클릭하면 아무것도 안나오는 문제(이어서...^^;;;) 정보
카테고리 클릭하면 아무것도 안나오는 문제(이어서...^^;;;)
본문
오류가 나는곳의 주소를 알려주시면 더 빠르고 정확하게 답변 받을 수 있습니다.
오류 주소 : http://www.iunews.co.kr/bbs/board.php?bo_table=list01
아래 제가 질문한 내용입니다
==================================================
http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=93804&page=2
==================================================
엑스엠엘님께서 친절히 답변해 주셨습니다...
근데 제 이해력이 짧아서 해결을 몬하구 있네요 엑스엠엘님 죄송합니다~ㅠ.ㅠ
엑스엠일님 답변입니다
===================================================
list.skin.php에서 다음 부분을 확인하세요.
<form name="fcategory" method="get" style="margin:0; padding:0;">
<!--<select name=sca onchange="location=''+encodeURI(this.value);">-->
<select name=sca onchange="location='./board.php?bo_table=list01&sca='+encodeURI(this.value);">
<option value=''>전체</option>
<option value='내산펌프'>내산펌프</option>
<option value='진공 펌프'>진공 펌프</option>
<option value='로타리기아 펌프'>로타리기아 펌프</option>
<option value='무맥동 피스톤 펌프'>무맥동 피스톤 펌프</option>
</select>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
위 부분에서 fcategory.sca와
아래에서 document.fcategory.sca.value에 대입하는 부분
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
document.fsearch.sop.value = '<?=$sop?>';
==========================================================
document.fcategory.sca.value << 요 부분을 어디에 대입해야 될까요?
소스 보기를 하신듯 합니다
해결책을 주시기 위해 노력해 주신점 깊이 감사드립니다
소스보기를 하셨을때 list.skin.php 안에서
==================================================== ▼
<option value=''>전체</option>
<option value='내산펌프'>내산펌프</option>
<option value='진공 펌프'>진공 펌프</option>
<option value='로타리기아 펌프'>로타리기아 펌프</option>
<option value='무맥동 피스톤 펌프'>무맥동 피스톤 펌프</option>
</select>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
====================================================== ▲
부분은 셀렉트 박스 부분으로 이 부분은 제데로 보여집니다
어제 엑스엠엘님께서 답변주신 링크로 가서 해결을 보았거든요
문제는 http://www.iunews.co.kr/bbs/board.php?bo_table=list01 로 들어가면
전체(카테고리 셀렉트박스) / 검색분류(?)셀렉트 박스 / 검색폼 / and, or 셀렉트 박스 / 검색버튼 밑에
================================================▼
전체목록 : ㆍ내산펌프 ㆍ진공 펌프 ㆍ로타리기아 펌프 ㆍ무맥동 피스톤 펌프
================================================▲
요런 노출된 카테고리 분류가 나옵니다 ↑
위의 ▶전체(카테고리 셀렉트박스) ◀를 클릭하여 선택하면 카테고리별로 문제 없이 나오지만 노출된 카테고리를 클릭하게 되면 없다고 나오게 됩니다
fcategory 부분(노출된 카테고리 부분)은 list.skin.php 내에서 _inc_category.php를 인클루드하여 보여지게 됩니다
해당 소스 두가지를 모두 올려보겠습니다
list.skin.php 의 전체 내용
=======================================================▼
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if (!$skin_no) $skin_no = "01";
//링크 썸네일 게시판을 위해 수정 - 2007년 1월 22일 월요일 - 플록
if (!function_exists("imagecopyresampled")) alert("GD 2.0.1 이상 버전이 설치되어 있어야 사용할 수 있는 갤러리 게시판 입니다.");
include_once($board_skin_path . "/Ylink_thumb.lib.php");//본문 링크 이미지 썸네일 생성
//여분필드 기본값 설정 - 리자언니 free_img3 스킨에서
if (empty($board['bo_1'])) {
$board['bo_1'] = "100,100";
$sql = " update ".$g4['board_table']." set bo_1 = '".$board['bo_1']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
list($w, $h) = explode(",", $board['bo_1']);
if (empty($board['bo_2'])) {
$board['bo_2'] = "100";
$sql = " update ".$g4['board_table']." set bo_2 = '".$board['bo_2']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
if (empty($board['bo_3'])) {
$board['bo_3'] = "280";
$sql = " update ".$g4['board_table']." set bo_3 = '".$board['bo_3']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
list($w, $h) = explode(",", $board['bo_1']);
$data_path = $g4['path'] . "/data/file/" . $bo_table;
$thumb_path = $data_path . '/thumb';
if (!is_dir($thumb_path)) {
@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);
}
?>
<!-- 게시판 목록 시작 -->
<table width="<?=$width?>" border="0" cellspacing="0" cellpadding="3" align="center">
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<form name="fcategory" method="get" style="margin:0; padding:0;">
<? if ($is_category) { ?>
<!--<select name=sca onchange="location='<?//=$category_location?>'+encodeURI(this.value);">-->
<select name=sca onchange="location='<?=$category_location?>'+encodeURI(this.value);">
<option value=''>전체</option>
<?=$category_option?>
</select>
<? } ?>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
</td>
<td align="right">
<table border="0" cellspacing="0" cellpadding="1">
<form name=fsearch method=get style="margin:0px;">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=sca value="<?=$sca?>">
<tr>
<td><select name=sfl>
<option value='wr_subject||wr_content'>기사검색</option>
<option value='wr_subject'>기사제목</option>
<option value='wr_content'>기사내용</option>
</select></td>
<td><input name=stx maxlength=15 size=15 itemname="검색어" required value="<?=$stx?>"></td>
<td><select name=sop>
<option value=and>and</option>
<option value=or>or</option>
</select></td>
<td><input type=image src="<?=$board_skin_path?>/img/search_btn.gif" border=0 align=absmiddle name="image"></td>
</tr></form>
</table>
</td>
<? if ($admin_href) { ?><td align="right" width="63"><a href="<?=$admin_href?>"><img src="<?=$board_skin_path?>/img/admin_button.gif" title="관리자" width="63" height="22" border="0" align="absmiddle"></a></td><?}?>
</tr>
</table>
</td>
</tr>
<tr>
<td bgcolor="#CCCCCC" height="1"></td>
</tr>
<tr>
<td height="10"></td>
</tr>
<? if ($is_category) { ?>
<tr>
<td>
<? include "_inc_category.php"; ?>
</td>
</tr>
<? } ?>
<tr>
<td height="10"></td>
</tr>
<tr>
<td bgcolor="#f0f0f0" height="2"></td>
</tr>
<tr>
<td height="10"></td>
</tr>
</table>
<form name="fboardlist" method="post" style="margin:0px;">
<input type='hidden' name='bo_table' value='<?=$bo_table?>'>
<input type='hidden' name='sfl' value='<?=$sfl?>'>
<input type='hidden' name='stx' value='<?=$stx?>'>
<input type='hidden' name='spt' value='<?=$spt?>'>
<input type='hidden' name='page' value='<?=$page?>'>
<input type='hidden' name='sw' value=''>
<?
for ($i=0; $i<count($list); $i++){
//------------------------------
//본문에 링크한 이미지 레코드별 배열 - 한페이지에서 중복사용가능
$re = '/src[ =]+[\'"]([^\'"]+\.(?:gif|jpg|png|bmp))[\'"]/i';
preg_match_all($re, $list[$i]['wr_content'], $match, PREG_PATTERN_ORDER);
//$imgs[$i] = $match[1][0]; //$url = $match[1][0];
$dest_link[] = array( 'wr_id' => $list[$i]['wr_id'], 'url' => $match[1]);
//print_r2($dest_link[$i]);
$url = $dest_link[$i]['url']['0'];//첫번째 링크된 이미지, 두번째는 $dest_link[$i]['url'][1]
//------------------------------
$save_dir = $thumb_path;//임시 저장경로
$referer = "";//속일 리퍼러, 넣지 않아도 됨
$thumb = $save_dir . '/s_' . base64_encode($url);
//썸네일이 없다면 본문 첫번째 링크된 이미지 파일의 썸네일을 생성합니다.
if (!file_exists($thumb)) {
//if ((is_file($url)) && (!file_exists($thumb))) {//원본이미지 있고 썸네일 없을때
//유효하지 않는 링크에 대한 에러를 표시하지 않는다.
$result = @Ymake_sumnail_remoteimage($url, $save_dir, $w, $h, $referer);
}
//링크에서 파일명 가져옴
$filename = strrchr($url,"/");
$filename = substr($filename, 1);
$filename = urlencode($filename); //타이틀
//------------------------------
//첨부파일1번이 있다면 우선사용합니다.
if ($list[$i]['file'][0]['file']){
$filename = $list[$i]['file'][0]['file']; //첫번째 이미지 파일로 지정
$dest_file = $data_path .'/'. $filename;//원본 이미지
if (preg_match("/\.(jp[e]?g|gif|png)$/i", $filename) && file_exists($dest_file)){
$thumb = $thumb_path.'/' . $filename;
if (!file_exists($thumb)){
$size = getimagesize($dest_file);
if ($size[2] == 1)
$src = imagecreatefromgif($dest_file);
else if ($size[2] == 2)
$src = imagecreatefromjpeg($dest_file);
else if ($size[2] == 3)
$src = imagecreatefrompng($dest_file);
else
break;
if ($size[0] >= $size[1]){
$rate = $w / $size[0];
$width = $w;
$height = (int)($size[1] * $rate);
}
else{
$rate = $h / $size[1];
$width = (int)($size[0] * $rate);
$height = $h;
}
$dst = imagecreatetruecolor($width, $height);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $width, $height, $size[0], $size[1]);
imagejpeg($dst, $thumb, $board['bo_2']);
chmod($thumb, 0707);
}
}
}
//----------------------------------------------------------------
$f_title = $list[$i]['file'][0]['file']?" ".$list[$i]['file'][0]['source']."":"".$filename."";
if (file_exists($thumb)){
$img = "<img src='".$thumb. "' style='border: 1px solid silver;' align='left' title='".$f_title." Hit: ".$list[$i]['wr_hit']."'>";
}
//----------------------------------------------------------------
if ($list[$i]['comment_cnt']){
$comment_cnt ="<a href=\"javascript:{$list[$i][comment_href]}\">{$list[$i]['comment_cnt']}</a>";
}
if (($i==0)||($i==1)||($i==2)||($i==3)||($i==4)){//세번째 까지 이미지 제어
if ((empty($list[$i][file][0][file])) && (empty($url))) {//파일1,링크1 체크 - 제목,쪽글만 표시
$subject = ($list[$i]['is_notice'])?"<a href='".$list[$i]['href']."' style='color:#2C8CB9;font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>":"<a href='".$list[$i]['href']."' style='font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>";
$wr_content = "<a href='{$list[$i]['href']}'>".cut_str(strip_tags($list[$i]['wr_content']), 280, '...')."</a>";
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;' class="a">
<div style='width:100%;border:0px solid silver;margin:0;padding-top:7;class:a'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><?=$subject?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?></div>
<div style="width:100%;text-align:left;line-height:155%;margin-right:1; margin-left:1;class:a"><?=$wr_content?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div>
</div><?
}
else{//이미지,제목,쪽글 표시
$subject = ($list[$i]['is_notice'])?"<a href='".$list[$i]['href']."' style='color:#2C8CB9;font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>":"<a href='".$list[$i]['href']."' style='font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>";
$wr_content = "<a href='{$list[$i]['href']}'>".cut_str(strip_tags($list[$i]['wr_content']), 300, '...')."</a>";
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;class:a'>
<div style='width:100%;border:0px solid silver;margin:0;padding-top:3px;class:a;'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><a href="<?=$list[$i]['href']?>" style="font-family:굴림;font-size:9px;font-weight:bold;"><?=$subject?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?></div>
<div style="width:100%;text-align:left;line-height:155%;margin-right:1; margin-left:1;"><a href="<?=$list[$i]['href']?>"><?=$img?></a><?=$wr_content?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div>
</div><?
}
}
else {//세번째 글 이후 (제목, 날짜만)
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;padding:2px;class:a'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><a href="<?=$list[$i]['href']?>" style="font-family:굴림;font-size:9px;font-weight:bold;"><?=$list[$i]['subject']?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div><?
}
}//for
if (count($list) == 0) { echo "<table width='$width' align=center cellpadding=0 cellspacing=0 height=200><tr><td align=center >내용이 없습니다.</td></tr></table>"; } ?>
<table width="<?=$width?>" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="100%" align="center" height=30 valign=bottom><? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/btn_search_prev.gif' width=50 height=20 border=0 align=absmiddle title='이전검색'></a>"; } ?>
<?
// 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
//echo $write_pages;
$write_pages = str_replace("처음", "<img src='$board_skin_path/img/begin.gif' border='0' align='absmiddle' title='처음'>", $write_pages);
$write_pages = str_replace("이전", "<img src='$board_skin_path/img/prev.gif' border='0' align='absmiddle' title='이전'>", $write_pages);
$write_pages = str_replace("다음", "<img src='$board_skin_path/img/next.gif' border='0' align='absmiddle' title='다음'>", $write_pages);
$write_pages = str_replace("맨끝", "<img src='$board_skin_path/img/end.gif' border='0' align='absmiddle' title='맨끝'>", $write_pages);
$write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:#797979\">$1</font></b>", $write_pages);
$write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:orange;\">$1</font></b>", $write_pages);
?>
<?=$write_pages?>
<? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/btn_search_next.gif' width=50 height=20 border=0 align=absmiddle title='다음검색'></a>"; } ?></td>
</tr>
</table>
<table width="<?=$width?>" border="0" cellspacing="0" cellpadding="10" align="center">
<tr>
<td><? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0"></a><? } ?>
<? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0"></a><? } ?>
<? if ($is_checkbox) { ?>
<a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0"></a>
<a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0"></a>
<a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0"></a>
<? } ?><? if ($is_checkbox) { ?></td>
<td align="right"><INPUT onclick="if (this.checked) all_checked(true); else all_checked(false);" type=checkbox>전체선택 <?}?><a href="#"><font color="#999999">▲ <b>맨위로</b></font><b></b></a></td>
</tr>
</table>
</form>
<? if ($is_checkbox) { ?>
<script language="JavaScript">
<!-- 엑스엠엘님이 알려 주신 부분 -->
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
document.fsearch.sop.value = '<?=$sop?>';
}
<!-- 요까지 -->
function all_checked(sw)
{
var f = document.fboardlist;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]")
f.elements[i].checked = sw;
}
}
function check_confirm(str)
{
var f = document.fboardlist;
var chk_count = 0;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
chk_count++;
}
if (!chk_count) {
alert(str + "할 게시물을 하나 이상 선택하세요.");
return false;
}
return true;
}
// 선택한 게시물 삭제
function select_delete()
{
var f = document.fboardlist;
str = "삭제";
if (!check_confirm(str))
return;
if (!confirm("선택한 게시물을 정말 "+str+" 하시겠습니까?\n\n한번 "+str+"한 자료는 복구할 수 없습니다"))
return;
f.action = "./delete_all.php";
f.submit();
}
// 선택한 게시물 복사 및 이동
function select_copy(sw)
{
var f = document.fboardlist;
if (sw == "copy")
str = "복사";
else
str = "이동";
if (!check_confirm(str))
return;
var sub_win = window.open("", "move", "left=50, top=50, width=396, height=550, scrollbars=1");
f.sw.value = sw;
f.target = "move";
f.action = "./move.php";
f.submit();
}
</script>
<? } ?>
<!-- 게시판 목록 끝 -->
=======================================================▲
_inc_category.php의 전체 내용
=======================================================▼
<style type='text/css'>
/*-- 카테고리명 --*/
.cate {font-family:Tahoma,굴림,arial; color:#666666; font-size:12px;}
a:link, a:visited, a:active { text-decoration:none; color:#466C8A; }
a.cate:link, a.b_ca:visited, a.b_ca:active {font-family:Tahoma,굴림,arial; color:#666666; font-size:12px;}
a.cate:hover {font-family:Tahoma,굴림, arial; color:#ff6600; font-size:12px; text-decoration:underline;}
</style>
<!-- 엑스엠엘님이 말씀해 주신 부분 -->
<!--<script language="JavaScript">
if ('<?//=$sca?>') document.fcategory.sca.value = '<?//=$sca?>';
if ('<?//=$stx?>') {
document.fsearch.sfl.value = '<?//=$sfl?>';
document.fsearch.sop.value = '<?//=$sop?>';
}
</script>-->
<!-- 요까지 해결이 안되어 주석처리 -->
<? if (!$wr_id) { ?>
<!-- 분류 셀렉트 박스 시작 -->
<?
$cnt = 1;
$sql = " SELECT bo_category_list FROM $g4[board_table] WHERE bo_table = '$bo_table' ";
$row = sql_fetch($sql);
$arr = explode("|", $row[bo_category_list]); // 구분자가 , 로 되어 있음
$str = "";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i])) {
$sql1 = " SELECT count(*) as cCount FROM $write_table WHERE ca_name = '$arr[$i]' and wr_comment >= 0 ";
$row1 = sql_fetch($sql1);
$str .= "ㆍ<a href='./board.php?bo_table=$bo_table&sca=$arr[$i]&sop=&sst=wr_1&sod=desc&sfl=&stx=&page=1'>$arr[$i]</a> ";
$cnt++;
}
$sql2 = " SELECT count(*) as cCount FROM $write_table WHERE wr_comment >= 0 ";
$row2 = sql_fetch($sql2);
$Total_Cat = $row2[cCount]
?>
<table cellspacing=0 cellpadding=0 border=0>
<tr>
<td valign="top" width="70"><b><a href='../news/board.php?bo_table=<?=$bo_table?>&sca=<?=$arr[$i]?>&sop=&sst=wr_1&sod=desc&sfl=&stx=&page=1'><font color="#000000">전체목록</font></a> : </b></td>
<td valign="top"><span class="cate"><?=$str?></span></td>
</tr>
</table>
<!-- 분류 셀렉트 박스 끝 -->
<? } ?>
=======================================================▲
여기까지 입니다
혹시 저와 같은 문제로 해결보신 분이 있으시다면 주저없이 저에게 가르침을...흑~
오류 주소 : http://www.iunews.co.kr/bbs/board.php?bo_table=list01
아래 제가 질문한 내용입니다
==================================================
http://www.sir.co.kr/bbs/board.php?bo_table=g4_qa&wr_id=93804&page=2
==================================================
엑스엠엘님께서 친절히 답변해 주셨습니다...
근데 제 이해력이 짧아서 해결을 몬하구 있네요 엑스엠엘님 죄송합니다~ㅠ.ㅠ
엑스엠일님 답변입니다
===================================================
list.skin.php에서 다음 부분을 확인하세요.
<form name="fcategory" method="get" style="margin:0; padding:0;">
<!--<select name=sca onchange="location=''+encodeURI(this.value);">-->
<select name=sca onchange="location='./board.php?bo_table=list01&sca='+encodeURI(this.value);">
<option value=''>전체</option>
<option value='내산펌프'>내산펌프</option>
<option value='진공 펌프'>진공 펌프</option>
<option value='로타리기아 펌프'>로타리기아 펌프</option>
<option value='무맥동 피스톤 펌프'>무맥동 피스톤 펌프</option>
</select>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
위 부분에서 fcategory.sca와
아래에서 document.fcategory.sca.value에 대입하는 부분
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
document.fsearch.sop.value = '<?=$sop?>';
==========================================================
document.fcategory.sca.value << 요 부분을 어디에 대입해야 될까요?
소스 보기를 하신듯 합니다
해결책을 주시기 위해 노력해 주신점 깊이 감사드립니다
소스보기를 하셨을때 list.skin.php 안에서
==================================================== ▼
<option value=''>전체</option>
<option value='내산펌프'>내산펌프</option>
<option value='진공 펌프'>진공 펌프</option>
<option value='로타리기아 펌프'>로타리기아 펌프</option>
<option value='무맥동 피스톤 펌프'>무맥동 피스톤 펌프</option>
</select>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
====================================================== ▲
부분은 셀렉트 박스 부분으로 이 부분은 제데로 보여집니다
어제 엑스엠엘님께서 답변주신 링크로 가서 해결을 보았거든요
문제는 http://www.iunews.co.kr/bbs/board.php?bo_table=list01 로 들어가면
전체(카테고리 셀렉트박스) / 검색분류(?)셀렉트 박스 / 검색폼 / and, or 셀렉트 박스 / 검색버튼 밑에
================================================▼
전체목록 : ㆍ내산펌프 ㆍ진공 펌프 ㆍ로타리기아 펌프 ㆍ무맥동 피스톤 펌프
================================================▲
요런 노출된 카테고리 분류가 나옵니다 ↑
위의 ▶전체(카테고리 셀렉트박스) ◀를 클릭하여 선택하면 카테고리별로 문제 없이 나오지만 노출된 카테고리를 클릭하게 되면 없다고 나오게 됩니다
fcategory 부분(노출된 카테고리 부분)은 list.skin.php 내에서 _inc_category.php를 인클루드하여 보여지게 됩니다
해당 소스 두가지를 모두 올려보겠습니다
list.skin.php 의 전체 내용
=======================================================▼
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
if (!$skin_no) $skin_no = "01";
//링크 썸네일 게시판을 위해 수정 - 2007년 1월 22일 월요일 - 플록
if (!function_exists("imagecopyresampled")) alert("GD 2.0.1 이상 버전이 설치되어 있어야 사용할 수 있는 갤러리 게시판 입니다.");
include_once($board_skin_path . "/Ylink_thumb.lib.php");//본문 링크 이미지 썸네일 생성
//여분필드 기본값 설정 - 리자언니 free_img3 스킨에서
if (empty($board['bo_1'])) {
$board['bo_1'] = "100,100";
$sql = " update ".$g4['board_table']." set bo_1 = '".$board['bo_1']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
list($w, $h) = explode(",", $board['bo_1']);
if (empty($board['bo_2'])) {
$board['bo_2'] = "100";
$sql = " update ".$g4['board_table']." set bo_2 = '".$board['bo_2']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
if (empty($board['bo_3'])) {
$board['bo_3'] = "280";
$sql = " update ".$g4['board_table']." set bo_3 = '".$board['bo_3']."' where bo_table = '".$bo_table."' ";
sql_query($sql);
}
list($w, $h) = explode(",", $board['bo_1']);
$data_path = $g4['path'] . "/data/file/" . $bo_table;
$thumb_path = $data_path . '/thumb';
if (!is_dir($thumb_path)) {
@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);
}
?>
<!-- 게시판 목록 시작 -->
<table width="<?=$width?>" border="0" cellspacing="0" cellpadding="3" align="center">
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<form name="fcategory" method="get" style="margin:0; padding:0;">
<? if ($is_category) { ?>
<!--<select name=sca onchange="location='<?//=$category_location?>'+encodeURI(this.value);">-->
<select name=sca onchange="location='<?=$category_location?>'+encodeURI(this.value);">
<option value=''>전체</option>
<?=$category_option?>
</select>
<? } ?>
<!--<span id="my_menu_add"></? include("$g4[bbs_path]/my_menu_script.php");?></span>-->
</form>
</td>
<td align="right">
<table border="0" cellspacing="0" cellpadding="1">
<form name=fsearch method=get style="margin:0px;">
<input type=hidden name=bo_table value="<?=$bo_table?>">
<input type=hidden name=sca value="<?=$sca?>">
<tr>
<td><select name=sfl>
<option value='wr_subject||wr_content'>기사검색</option>
<option value='wr_subject'>기사제목</option>
<option value='wr_content'>기사내용</option>
</select></td>
<td><input name=stx maxlength=15 size=15 itemname="검색어" required value="<?=$stx?>"></td>
<td><select name=sop>
<option value=and>and</option>
<option value=or>or</option>
</select></td>
<td><input type=image src="<?=$board_skin_path?>/img/search_btn.gif" border=0 align=absmiddle name="image"></td>
</tr></form>
</table>
</td>
<? if ($admin_href) { ?><td align="right" width="63"><a href="<?=$admin_href?>"><img src="<?=$board_skin_path?>/img/admin_button.gif" title="관리자" width="63" height="22" border="0" align="absmiddle"></a></td><?}?>
</tr>
</table>
</td>
</tr>
<tr>
<td bgcolor="#CCCCCC" height="1"></td>
</tr>
<tr>
<td height="10"></td>
</tr>
<? if ($is_category) { ?>
<tr>
<td>
<? include "_inc_category.php"; ?>
</td>
</tr>
<? } ?>
<tr>
<td height="10"></td>
</tr>
<tr>
<td bgcolor="#f0f0f0" height="2"></td>
</tr>
<tr>
<td height="10"></td>
</tr>
</table>
<form name="fboardlist" method="post" style="margin:0px;">
<input type='hidden' name='bo_table' value='<?=$bo_table?>'>
<input type='hidden' name='sfl' value='<?=$sfl?>'>
<input type='hidden' name='stx' value='<?=$stx?>'>
<input type='hidden' name='spt' value='<?=$spt?>'>
<input type='hidden' name='page' value='<?=$page?>'>
<input type='hidden' name='sw' value=''>
<?
for ($i=0; $i<count($list); $i++){
//------------------------------
//본문에 링크한 이미지 레코드별 배열 - 한페이지에서 중복사용가능
$re = '/src[ =]+[\'"]([^\'"]+\.(?:gif|jpg|png|bmp))[\'"]/i';
preg_match_all($re, $list[$i]['wr_content'], $match, PREG_PATTERN_ORDER);
//$imgs[$i] = $match[1][0]; //$url = $match[1][0];
$dest_link[] = array( 'wr_id' => $list[$i]['wr_id'], 'url' => $match[1]);
//print_r2($dest_link[$i]);
$url = $dest_link[$i]['url']['0'];//첫번째 링크된 이미지, 두번째는 $dest_link[$i]['url'][1]
//------------------------------
$save_dir = $thumb_path;//임시 저장경로
$referer = "";//속일 리퍼러, 넣지 않아도 됨
$thumb = $save_dir . '/s_' . base64_encode($url);
//썸네일이 없다면 본문 첫번째 링크된 이미지 파일의 썸네일을 생성합니다.
if (!file_exists($thumb)) {
//if ((is_file($url)) && (!file_exists($thumb))) {//원본이미지 있고 썸네일 없을때
//유효하지 않는 링크에 대한 에러를 표시하지 않는다.
$result = @Ymake_sumnail_remoteimage($url, $save_dir, $w, $h, $referer);
}
//링크에서 파일명 가져옴
$filename = strrchr($url,"/");
$filename = substr($filename, 1);
$filename = urlencode($filename); //타이틀
//------------------------------
//첨부파일1번이 있다면 우선사용합니다.
if ($list[$i]['file'][0]['file']){
$filename = $list[$i]['file'][0]['file']; //첫번째 이미지 파일로 지정
$dest_file = $data_path .'/'. $filename;//원본 이미지
if (preg_match("/\.(jp[e]?g|gif|png)$/i", $filename) && file_exists($dest_file)){
$thumb = $thumb_path.'/' . $filename;
if (!file_exists($thumb)){
$size = getimagesize($dest_file);
if ($size[2] == 1)
$src = imagecreatefromgif($dest_file);
else if ($size[2] == 2)
$src = imagecreatefromjpeg($dest_file);
else if ($size[2] == 3)
$src = imagecreatefrompng($dest_file);
else
break;
if ($size[0] >= $size[1]){
$rate = $w / $size[0];
$width = $w;
$height = (int)($size[1] * $rate);
}
else{
$rate = $h / $size[1];
$width = (int)($size[0] * $rate);
$height = $h;
}
$dst = imagecreatetruecolor($width, $height);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $width, $height, $size[0], $size[1]);
imagejpeg($dst, $thumb, $board['bo_2']);
chmod($thumb, 0707);
}
}
}
//----------------------------------------------------------------
$f_title = $list[$i]['file'][0]['file']?" ".$list[$i]['file'][0]['source']."":"".$filename."";
if (file_exists($thumb)){
$img = "<img src='".$thumb. "' style='border: 1px solid silver;' align='left' title='".$f_title." Hit: ".$list[$i]['wr_hit']."'>";
}
//----------------------------------------------------------------
if ($list[$i]['comment_cnt']){
$comment_cnt ="<a href=\"javascript:{$list[$i][comment_href]}\">{$list[$i]['comment_cnt']}</a>";
}
if (($i==0)||($i==1)||($i==2)||($i==3)||($i==4)){//세번째 까지 이미지 제어
if ((empty($list[$i][file][0][file])) && (empty($url))) {//파일1,링크1 체크 - 제목,쪽글만 표시
$subject = ($list[$i]['is_notice'])?"<a href='".$list[$i]['href']."' style='color:#2C8CB9;font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>":"<a href='".$list[$i]['href']."' style='font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>";
$wr_content = "<a href='{$list[$i]['href']}'>".cut_str(strip_tags($list[$i]['wr_content']), 280, '...')."</a>";
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;' class="a">
<div style='width:100%;border:0px solid silver;margin:0;padding-top:7;class:a'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><?=$subject?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?></div>
<div style="width:100%;text-align:left;line-height:155%;margin-right:1; margin-left:1;class:a"><?=$wr_content?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div>
</div><?
}
else{//이미지,제목,쪽글 표시
$subject = ($list[$i]['is_notice'])?"<a href='".$list[$i]['href']."' style='color:#2C8CB9;font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>":"<a href='".$list[$i]['href']."' style='font-weight:bold;font-size:18px;'>".$list[$i]['subject']."</a>";
$wr_content = "<a href='{$list[$i]['href']}'>".cut_str(strip_tags($list[$i]['wr_content']), 300, '...')."</a>";
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;class:a'>
<div style='width:100%;border:0px solid silver;margin:0;padding-top:3px;class:a;'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><a href="<?=$list[$i]['href']?>" style="font-family:굴림;font-size:9px;font-weight:bold;"><?=$subject?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?></div>
<div style="width:100%;text-align:left;line-height:155%;margin-right:1; margin-left:1;"><a href="<?=$list[$i]['href']?>"><?=$img?></a><?=$wr_content?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div>
</div><?
}
}
else {//세번째 글 이후 (제목, 날짜만)
?><div style='width:100%;border-bottom:1px dashed silver;margin-top:3px;padding:2px;class:a'><? if ($is_checkbox) { ?><input type=checkbox name=chk_wr_id[] value="<?=$list[$i][wr_id]?>"><? } ?><a href="<?=$list[$i]['href']?>" style="font-family:굴림;font-size:9px;font-weight:bold;"><?=$list[$i]['subject']?></a><?=$list[$i]['comment_cnt']?> <?=$list[$i]['icon_new']?><span style="font-size:8pt;color:cornflowerblue;padding-left:5">(<?=$list[$i]['datetime']?>)</span></div>
<div style='clear:both;'></div><?
}
}//for
if (count($list) == 0) { echo "<table width='$width' align=center cellpadding=0 cellspacing=0 height=200><tr><td align=center >내용이 없습니다.</td></tr></table>"; } ?>
<table width="<?=$width?>" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="100%" align="center" height=30 valign=bottom><? if ($prev_part_href) { echo "<a href='$prev_part_href'><img src='$board_skin_path/img/btn_search_prev.gif' width=50 height=20 border=0 align=absmiddle title='이전검색'></a>"; } ?>
<?
// 기본으로 넘어오는 페이지를 아래와 같이 변환하여 이미지로도 출력할 수 있습니다.
//echo $write_pages;
$write_pages = str_replace("처음", "<img src='$board_skin_path/img/begin.gif' border='0' align='absmiddle' title='처음'>", $write_pages);
$write_pages = str_replace("이전", "<img src='$board_skin_path/img/prev.gif' border='0' align='absmiddle' title='이전'>", $write_pages);
$write_pages = str_replace("다음", "<img src='$board_skin_path/img/next.gif' border='0' align='absmiddle' title='다음'>", $write_pages);
$write_pages = str_replace("맨끝", "<img src='$board_skin_path/img/end.gif' border='0' align='absmiddle' title='맨끝'>", $write_pages);
$write_pages = preg_replace("/<span>([0-9]*)<\/span>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:#797979\">$1</font></b>", $write_pages);
$write_pages = preg_replace("/<b>([0-9]*)<\/b>/", "<b><font style=\"font-family:돋움; font-size:9pt; color:orange;\">$1</font></b>", $write_pages);
?>
<?=$write_pages?>
<? if ($next_part_href) { echo "<a href='$next_part_href'><img src='$board_skin_path/img/btn_search_next.gif' width=50 height=20 border=0 align=absmiddle title='다음검색'></a>"; } ?></td>
</tr>
</table>
<table width="<?=$width?>" border="0" cellspacing="0" cellpadding="10" align="center">
<tr>
<td><? if ($list_href) { ?><a href="<?=$list_href?>"><img src="<?=$board_skin_path?>/img/btn_list.gif" border="0"></a><? } ?>
<? if ($write_href) { ?><a href="<?=$write_href?>"><img src="<?=$board_skin_path?>/img/btn_write.gif" border="0"></a><? } ?>
<? if ($is_checkbox) { ?>
<a href="javascript:select_delete();"><img src="<?=$board_skin_path?>/img/btn_select_delete.gif" border="0"></a>
<a href="javascript:select_copy('copy');"><img src="<?=$board_skin_path?>/img/btn_select_copy.gif" border="0"></a>
<a href="javascript:select_copy('move');"><img src="<?=$board_skin_path?>/img/btn_select_move.gif" border="0"></a>
<? } ?><? if ($is_checkbox) { ?></td>
<td align="right"><INPUT onclick="if (this.checked) all_checked(true); else all_checked(false);" type=checkbox>전체선택 <?}?><a href="#"><font color="#999999">▲ <b>맨위로</b></font><b></b></a></td>
</tr>
</table>
</form>
<? if ($is_checkbox) { ?>
<script language="JavaScript">
<!-- 엑스엠엘님이 알려 주신 부분 -->
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
document.fsearch.sop.value = '<?=$sop?>';
}
<!-- 요까지 -->
function all_checked(sw)
{
var f = document.fboardlist;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]")
f.elements[i].checked = sw;
}
}
function check_confirm(str)
{
var f = document.fboardlist;
var chk_count = 0;
for (var i=0; i<f.length; i++) {
if (f.elements[i].name == "chk_wr_id[]" && f.elements[i].checked)
chk_count++;
}
if (!chk_count) {
alert(str + "할 게시물을 하나 이상 선택하세요.");
return false;
}
return true;
}
// 선택한 게시물 삭제
function select_delete()
{
var f = document.fboardlist;
str = "삭제";
if (!check_confirm(str))
return;
if (!confirm("선택한 게시물을 정말 "+str+" 하시겠습니까?\n\n한번 "+str+"한 자료는 복구할 수 없습니다"))
return;
f.action = "./delete_all.php";
f.submit();
}
// 선택한 게시물 복사 및 이동
function select_copy(sw)
{
var f = document.fboardlist;
if (sw == "copy")
str = "복사";
else
str = "이동";
if (!check_confirm(str))
return;
var sub_win = window.open("", "move", "left=50, top=50, width=396, height=550, scrollbars=1");
f.sw.value = sw;
f.target = "move";
f.action = "./move.php";
f.submit();
}
</script>
<? } ?>
<!-- 게시판 목록 끝 -->
=======================================================▲
_inc_category.php의 전체 내용
=======================================================▼
<style type='text/css'>
/*-- 카테고리명 --*/
.cate {font-family:Tahoma,굴림,arial; color:#666666; font-size:12px;}
a:link, a:visited, a:active { text-decoration:none; color:#466C8A; }
a.cate:link, a.b_ca:visited, a.b_ca:active {font-family:Tahoma,굴림,arial; color:#666666; font-size:12px;}
a.cate:hover {font-family:Tahoma,굴림, arial; color:#ff6600; font-size:12px; text-decoration:underline;}
</style>
<!-- 엑스엠엘님이 말씀해 주신 부분 -->
<!--<script language="JavaScript">
if ('<?//=$sca?>') document.fcategory.sca.value = '<?//=$sca?>';
if ('<?//=$stx?>') {
document.fsearch.sfl.value = '<?//=$sfl?>';
document.fsearch.sop.value = '<?//=$sop?>';
}
</script>-->
<!-- 요까지 해결이 안되어 주석처리 -->
<? if (!$wr_id) { ?>
<!-- 분류 셀렉트 박스 시작 -->
<?
$cnt = 1;
$sql = " SELECT bo_category_list FROM $g4[board_table] WHERE bo_table = '$bo_table' ";
$row = sql_fetch($sql);
$arr = explode("|", $row[bo_category_list]); // 구분자가 , 로 되어 있음
$str = "";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i])) {
$sql1 = " SELECT count(*) as cCount FROM $write_table WHERE ca_name = '$arr[$i]' and wr_comment >= 0 ";
$row1 = sql_fetch($sql1);
$str .= "ㆍ<a href='./board.php?bo_table=$bo_table&sca=$arr[$i]&sop=&sst=wr_1&sod=desc&sfl=&stx=&page=1'>$arr[$i]</a> ";
$cnt++;
}
$sql2 = " SELECT count(*) as cCount FROM $write_table WHERE wr_comment >= 0 ";
$row2 = sql_fetch($sql2);
$Total_Cat = $row2[cCount]
?>
<table cellspacing=0 cellpadding=0 border=0>
<tr>
<td valign="top" width="70"><b><a href='../news/board.php?bo_table=<?=$bo_table?>&sca=<?=$arr[$i]?>&sop=&sst=wr_1&sod=desc&sfl=&stx=&page=1'><font color="#000000">전체목록</font></a> : </b></td>
<td valign="top"><span class="cate"><?=$str?></span></td>
</tr>
</table>
<!-- 분류 셀렉트 박스 끝 -->
<? } ?>
=======================================================▲
여기까지 입니다
혹시 저와 같은 문제로 해결보신 분이 있으시다면 주저없이 저에게 가르침을...흑~
댓글 전체
링크를 FF로 소스보기 해보니 아직도 character set이 섞여 있군요.
제 IE7 바보 같아서 소스보기가 엉망으로 나오네요.
basic/list.skin.php 밑에 보시면 스크립트가 있습니다.
그걸 현재 스킨(list.skin.php) 밑에도 넣어 주세요.
그리고 다시 소스 보기"해서 이 자바스크립트에서
document.fcategory.sca.value에 값을 제대로 넣어 주는지 확인하시면 됩니다.
제 IE7 바보 같아서 소스보기가 엉망으로 나오네요.
basic/list.skin.php 밑에 보시면 스크립트가 있습니다.
그걸 현재 스킨(list.skin.php) 밑에도 넣어 주세요.
그리고 다시 소스 보기"해서 이 자바스크립트에서
document.fcategory.sca.value에 값을 제대로 넣어 주는지 확인하시면 됩니다.
추가할 JavaScript
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
if ('<?=$sop?>' == 'and')
document.fsearch.sop[0].checked = true;
if ('<?=$sop?>' == 'or')
document.fsearch.sop[1].checked = true;
} else {
document.fsearch.sop[0].checked = true;
}
</script>
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
if ('<?=$sop?>' == 'and')
document.fsearch.sop[0].checked = true;
if ('<?=$sop?>' == 'or')
document.fsearch.sop[1].checked = true;
} else {
document.fsearch.sop[0].checked = true;
}
</script>
기존에 알려주신 스크립트를 주석처리하고 list.skin.php 안의 </script> 밑에
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
if ('<?=$sop?>' == 'and')
document.fsearch.sop[0].checked = true;
if ('<?=$sop?>' == 'or')
document.fsearch.sop[1].checked = true;
} else {
document.fsearch.sop[0].checked = true;
}
</script>
를 넣었습니다
그런데 똑같네요 ^^;;;
bssic 스킨 과 같이
<? if ($is_checkbox) { ?>
위 부분에 넣어줘도 똑같구요 ^^;;;
<script language="JavaScript">
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
if ('<?=$stx?>') {
document.fsearch.sfl.value = '<?=$sfl?>';
if ('<?=$sop?>' == 'and')
document.fsearch.sop[0].checked = true;
if ('<?=$sop?>' == 'or')
document.fsearch.sop[1].checked = true;
} else {
document.fsearch.sop[0].checked = true;
}
</script>
를 넣었습니다
그런데 똑같네요 ^^;;;
bssic 스킨 과 같이
<? if ($is_checkbox) { ?>
위 부분에 넣어줘도 똑같구요 ^^;;;
위에도 언급했듯이
소스보기에서
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
이 부분이 어떻게 나오는지 다시 확인해 보세요.
소스보기에서
if ('<?=$sca?>') document.fcategory.sca.value = '<?=$sca?>';
이 부분이 어떻게 나오는지 다시 확인해 보세요.
해결 했습니다
_inc_category.php << 파일을 버려버렸습니다 골치아포서 ㅋ
http://www.sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=62795
내용을 참조 해당 스킨에서 상단에 카테고리 노출시키는 부분만 빼왔습니다
도움 주신 엑스엠엘님께 다시한번 감사드립니다
엑스엠엘님 나 엑스엠엘님 펜이 되어버려써~+_+ ㅎㅎ
_inc_category.php << 파일을 버려버렸습니다 골치아포서 ㅋ
http://www.sir.co.kr/bbs/board.php?bo_table=g4_skin&wr_id=62795
내용을 참조 해당 스킨에서 상단에 카테고리 노출시키는 부분만 빼왔습니다
도움 주신 엑스엠엘님께 다시한번 감사드립니다
엑스엠엘님 나 엑스엠엘님 펜이 되어버려써~+_+ ㅎㅎ