중복선택(분류) 가능한 게시판에서 최근게시물로 분류별 이미지 뽑기 정보
중복선택(분류) 가능한 게시판에서 최근게시물로 분류별 이미지 뽑기본문
아래는 현재 사용중인 중복 선택 가능한 갤러리 소스입니다.
#######write.skin.php #########
<?
$sql2 = " select bo_category_list from $g4[board_table] where bo_table = '$bo_table' ";
$result2 = sql_fetch($sql2);
$row3 = explode("|", $result2['bo_category_list']);
<?
$sql2 = " select bo_category_list from $g4[board_table] where bo_table = '$bo_table' ";
$result2 = sql_fetch($sql2);
$row3 = explode("|", $result2['bo_category_list']);
foreach( $row3 as $value) {
echo "<input type=checkbox value=$value name=catt[]><font color=#000000>$value</font></label>"; }
?>
echo "<input type=checkbox value=$value name=catt[]><font color=#000000>$value</font></label>"; }
?>
############################
######write_update.skin ########
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$wr_10= implode(',', $catt);
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
$wr_10= implode(',', $catt);
$sql3 = " update g4_write_gallery set wr_10='$wr_10' where wr_id='$wr_id'";
sql_query($sql3);
?>
###########################
sql_query($sql3);
?>
###########################
#########list.skin.php #########
<?
$cnt_bo_1 = $bo_1[0] ? $bo_1[0] : 10; // 한줄당 분류 갯수(현재:10)
$cnt = 1;
$cnt0 = 0;
$bb_s=""; $bb_e="";
$b_s=""; $b_e="";
$arr = explode("|", $board[bo_category_list]); // 구분자가 , 로 되어 있음
$str = "";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i])) {
if ($sca == $arr[$i]) { $cnt0++; $b_s=""; $b_e=""; } else {$b_s=""; $b_e="";}
$str .= " <a href='./board.php?bo_table=gallery&sca=&sfl=wr_10&stx=".($arr[$i])."' onfocus='this.blur()'><font color='#000000'>$b_s$arr[$i]$b_e</font> </a> ";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= "<br>"; }
$cnt++;
}
if ($cnt0 == 0 ) { $bb_s=""; $bb_e=""; }
?>
##############################
$cnt_bo_1 = $bo_1[0] ? $bo_1[0] : 10; // 한줄당 분류 갯수(현재:10)
$cnt = 1;
$cnt0 = 0;
$bb_s=""; $bb_e="";
$b_s=""; $b_e="";
$arr = explode("|", $board[bo_category_list]); // 구분자가 , 로 되어 있음
$str = "";
for ($i=0; $i<count($arr); $i++)
if (trim($arr[$i])) {
if ($sca == $arr[$i]) { $cnt0++; $b_s=""; $b_e=""; } else {$b_s=""; $b_e="";}
$str .= " <a href='./board.php?bo_table=gallery&sca=&sfl=wr_10&stx=".($arr[$i])."' onfocus='this.blur()'><font color='#000000'>$b_s$arr[$i]$b_e</font> </a> ";
if ($cnt == $cnt_bo_1) { $cnt = 0; $str .= "<br>"; }
$cnt++;
}
if ($cnt0 == 0 ) { $bb_s=""; $bb_e=""; }
?>
##############################
이렇게 위와같이 구현해서 기존의 셀렉트형 단일 분류가 아닌
체크박스를 이용해서 중복분류 선택이 가능하게끔해서 사용중입니다.
체크박스를 이용해서 중복분류 선택이 가능하게끔해서 사용중입니다.
그런데 이번해 해 볼려고 하는것이
메인화면에 하나의 게시판(갤러리)에서 분류별로 이미지를 추출할려고 합니다.
인물
사진1 사진 2 사진 3
사진1 사진 2 사진 3
풍경
사진1 사진2 사진3
사진1 사진2 사진3
이런식으로요 근데 코드가 변경되다 보니
푸름빠덜님의 카테고리별 최신글 불러오기
의 적용이 잘 되지 않습니다.
푸름빠덜님의 inc_config.php 소스를 보면
#################### inc_config.php#########
<?
<?
function latest_category($skin_dir="", $bo_table, $rows=10, $subject_len=40, $options=""){//게시판에서 카테고리별 최신글 추출
global $config;
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/$config[cf_latest_skin]";
global $config;
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/$config[cf_latest_skin]";
$list = array();
$sql = " select * from {$g4[board_table]} where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4[write_prefix] . $bo_table; // 게시판 테이블 전체이름
$sql2 = " select bo_category_list from $g4[board_table] where bo_table = '$bo_table' order by bo_table ";
$result2 = sql_fetch($sql2);
$cat_row = explode("|", $result2[bo_category_list]);
for ($j=0; $j<count($cat_row); $j++) { //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$sql = " select * from $tmp_write_table where ca_name='".$cat_row[$j]."' and wr_is_comment = 0".$GLOBALS["ssh_wr_nogood"]." order by wr_id desc limit 0, $rows "; //##add06-04-12
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++){ //###############
$list[$j][$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();
$k++;
} //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
return $content;
}
$sql = " select * from {$g4[board_table]} where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$tmp_write_table = $g4[write_prefix] . $bo_table; // 게시판 테이블 전체이름
$sql2 = " select bo_category_list from $g4[board_table] where bo_table = '$bo_table' order by bo_table ";
$result2 = sql_fetch($sql2);
$cat_row = explode("|", $result2[bo_category_list]);
for ($j=0; $j<count($cat_row); $j++) { //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$sql = " select * from $tmp_write_table where ca_name='".$cat_row[$j]."' and wr_is_comment = 0".$GLOBALS["ssh_wr_nogood"]." order by wr_id desc limit 0, $rows "; //##add06-04-12
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++){ //###############
$list[$j][$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();
$k++;
} //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
return $content;
}
?>
###########################
위 소스중에서
$cat_row = explode("|", $result2[bo_category_list]);
위 부분을 변경해야하는데
$cat_row = explode(",", help);
help 부분을 어떻게 처리해야하는지 도무지 모르겠습니다.
wr_10
$list[$i][wr_10]
$view[wr_10]
$list[$i][wr_10]
$view[wr_10]
여기저기 팁란등을 보면서 위 값을 넣어보았지만
$cat_row 에 값이 제대로 들어가지 않네요
위 부분 말고도 수정할 곳이 더 있는지도 잘 모르겠습니다.
푸름파덜님의 소스를 적용할려면 최초부터 중복 카테고리 방식의 소스를
변경해야할까요?
변경해야할까요?
고수님들의 가르침과 더불어 관심있으신 분들의 작은 한마디 모두
감사히 듣겠습니다.
미리 감사드려요
댓글 전체
간단한 문제는 아니네요 지금 시간이 없어서 저녁에 함 볼게요 ^^
아 방금 해결했습니다
ca_name='".$cat_row[$j]." ==> wr_10='".$cat_row[$j]."
으로 변경하면 되네요
끝까지 안되면 누군가 도와줄 사람이 있다는 것만으로 마음이 편해지니
어제 안보이던게 보이네요
관심가져주셔서 감사드립니다. 푸름빠덜님~
!덧붙임 : 이전에 올려주신 팁도 잘 쓰겠습니다. 즐거운 하루되세요 ^^
ca_name='".$cat_row[$j]." ==> wr_10='".$cat_row[$j]."
으로 변경하면 되네요
끝까지 안되면 누군가 도와줄 사람이 있다는 것만으로 마음이 편해지니
어제 안보이던게 보이네요
관심가져주셔서 감사드립니다. 푸름빠덜님~
!덧붙임 : 이전에 올려주신 팁도 잘 쓰겠습니다. 즐거운 하루되세요 ^^