첨부 이미지 전체 보기 팝업버전 정보
첨부 이미지 전체 보기 팝업버전본문
음... 영카트에는 삽입된 이미지 보기 방식입니다..
그냥 기존 그누보드 소스 + 해피정님 소스를 이용하였습니다.
해피정님 사전에 양해가 없었던점 죄송합니다.
삭제를 원하신다면 곧바로 삭제 처리 하겠습니다..
##########################################################
용도
- 일반 게시판에서 첨부파일을 이미지들을 view페이지에서 썸네일이나 리사이즈 하여서
목록 형식으로 보여줄경우가 있습니다. 또한 큰 이미지 보기 버튼을 view 삽입 할경우
유용하리라 생각듭니다.
1. /bbs/ 폴더에 view_image.php 파일을 생성합니다.
( 해당 코드는 board.php, view.php 파일을 필요한부분만 합친겁니다.)
################## 아래 해당 코드를 입력합니다 ################
<?
include_once("./_common.php");
if (!$board[bo_table])
{
if ($cwin) // 코멘트 보기
alert_close("존재하지 않는 게시판입니다.", $g4[path]);
else
alert("존재하지 않는 게시판입니다.", $g4[path]);
}
if (!$bo_table)
{
$msg = "bo_table 값이 넘어오지 않았습니다.\\n\\nboard.php?bo_table=code 와 같은 방식으로 넘겨 주세요.";
if ($cwin) // 코멘트 보기
alert_close($msg);
else
alert($msg);
}
// wr_id 값이 있으면 글읽기
if ($wr_id)
{
// 글이 없을 경우 해당 게시판 목록으로 이동
if (!$write[wr_id])
{
$msg = "글이 존재하지 않습니다.\\n\\n글이 삭제되었거나 이동된 경우입니다.";
if ($cwin)
alert_close($msg);
else
alert($msg, "./board.php?bo_table=$bo_table");
}
}
include_once("$g4[path]/head.sub.php");
if (!($board[bo_use_comment] && $cwin)) {
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
@include_once("$board_skin_path/view.head.skin.php");
$view = get_view($write, $board, $board_skin_path, 255);
include_once("$board_skin_path/view_image.skin.php");
}
include_once("$g4[path]/tail.sub.php");
?>
#####################################################
2. 해당 게시판 skin 폴더에 view_image.skin.php 파일을 만듭니다.
3. 해피정님 소스를 붙여놓습니다. ( 클릭시 이미지 팝업창 띄우기 등 제거 - 아래 소스)
주소 :
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=16087&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%C7%D1%B9%F8+%BA%B8%B1%E2&sop=and
#############################################
<scRIPT LANGUAGE='Javascript'>
<!--
// 이미지뷰어
var win= null;
image_directory = ""; //배경이미지 경로
clear_img = new Image(); clear_img.src = image_directory + "./img/blank.gif";
<?
//파일 뽑기
$sql2_hp_view_img = " select bf_file from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no limit 0, 10 ";
$result2_hp_view_img = sql_query($sql2_hp_view_img);
for ($j=0; $row2_hp_view_img = sql_fetch_array($result2_hp_view_img); $j++) {
$view_one = "{$g4['path']}/data/file/{$bo_table}/{$row2_hp_view_img['bf_file']}";
?>
view_img<?=$j?> = new Image();
view_img<?=$j?>.src = "<?=$g4['path']?>/data/file/<?=$bo_table?>/<?=$row2_hp_view_img['bf_file']?>";
<? } ?>
function bgChange(imgName) {
document.getElementById('view_img').src = eval(imgName + ".src");
}
//-->
</scRIPT>
<table width="100%" cellspacing="0" cellpadding="0" border="0" align="center">
<tr>
<td style="padding:10 0 20 0;" align="center">
<?
//파일 뽑기
$sql_hp_view_img = " select bf_file from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no limit 0, 10 ";
$result_hp_view_img = sql_query($sql_hp_view_img);
for ($i=0; $row_hp_view_img = sql_fetch_array($result_hp_view_img); $i++) {
//썸네일 코드 시작
$data_path = $g4['path'] . "/data/file/{$bo_table}";//라이브러리 파일 참조
$thumb_path = $data_path . '/thumbOpen';
$view_w = 100; //썸네일 가로사이즈
$view_h = 75; //썸네일 세로사이즈
$sch_q = 100; //썸네일 퀼리티
if (!is_dir($thumb_path)) {
@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);
}
$filename = $row_hp_view_img[bf_file]; //파일명
$thumb = $thumb_path.'/'.$filename; //썸네일
if (!file_exists($thumb)) {
$file = $data_path.'/'.$filename; //원본
if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file) && file_exists($file)) {
$size = getimagesize($file);
if ($size[2] == 1)
$src = imagecreatefromgif($file);
else if ($size[2] == 2)
$src = imagecreatefromjpeg($file);
else if ($size[2] == 3)
$src = imagecreatefrompng($file);
else
continue;
$rate = $view_w / $size[0];
$height = (int)($size[1] * $rate);
if ($height < $view_h)
$dst = imagecreatetruecolor($view_w, $height);
else
$dst = imagecreatetruecolor($view_w, $view_h);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $view_w, $height, $size[0], $size[1]);
imagejpeg($dst, $thumb_path.'/'.$filename, $sch_q);
chmod($thumb_path.'/'.$filename, 0707);
}
}
if (file_exists($thumb) && $filename) {
?>
<a href="javascript:void(0);" onMouseOver="bgChange('view_img<?=$i?>');" onMouseOut="bgChange('view_img<?=$i?>');"><img src='<?=$thumb?>' border=0 width="69" height="60"></a>
<?
//onMouseOut="bgChange('clear_img');"
}
}
?>
</td>
</tr>
<tr>
<td align="center" valign="top"><img src="<?=$view_one?>" id="view_img" name="view_img" border="0"></td>
</tr>
</table>
#############################################
4. view.skin.php 에서 해당 링크 부분에
####################################
<span style="cursor:pointer;" onclick="win_open('./view_image.php?bo_table=<?=$bo_table?>&wr_id=<?=$wr_id?>','view_image','left=10,top=10,width=620,height=450,scrollbars=1');">테스트</span>
####################################
위처럼 win_open으로 팝업창을 띄어주면 됩니다.
-----------------------------------------------------------------------------
다시 한번 말씀드지만 해피정님께 사전에 양해를 구하지 못한점 죄송합니다.
삭제 요청 하시면 삭제 하도록 하겠습니다.
위 파일 생성 복사후, view_image.skin.php 에서 폼을 바꿔주시면 됩니다.
즐거운 시간 보내시기 바랍니다 ^^
그냥 기존 그누보드 소스 + 해피정님 소스를 이용하였습니다.
해피정님 사전에 양해가 없었던점 죄송합니다.
삭제를 원하신다면 곧바로 삭제 처리 하겠습니다..
##########################################################
용도
- 일반 게시판에서 첨부파일을 이미지들을 view페이지에서 썸네일이나 리사이즈 하여서
목록 형식으로 보여줄경우가 있습니다. 또한 큰 이미지 보기 버튼을 view 삽입 할경우
유용하리라 생각듭니다.
1. /bbs/ 폴더에 view_image.php 파일을 생성합니다.
( 해당 코드는 board.php, view.php 파일을 필요한부분만 합친겁니다.)
################## 아래 해당 코드를 입력합니다 ################
<?
include_once("./_common.php");
if (!$board[bo_table])
{
if ($cwin) // 코멘트 보기
alert_close("존재하지 않는 게시판입니다.", $g4[path]);
else
alert("존재하지 않는 게시판입니다.", $g4[path]);
}
if (!$bo_table)
{
$msg = "bo_table 값이 넘어오지 않았습니다.\\n\\nboard.php?bo_table=code 와 같은 방식으로 넘겨 주세요.";
if ($cwin) // 코멘트 보기
alert_close($msg);
else
alert($msg);
}
// wr_id 값이 있으면 글읽기
if ($wr_id)
{
// 글이 없을 경우 해당 게시판 목록으로 이동
if (!$write[wr_id])
{
$msg = "글이 존재하지 않습니다.\\n\\n글이 삭제되었거나 이동된 경우입니다.";
if ($cwin)
alert_close($msg);
else
alert($msg, "./board.php?bo_table=$bo_table");
}
}
include_once("$g4[path]/head.sub.php");
if (!($board[bo_use_comment] && $cwin)) {
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
@include_once("$board_skin_path/view.head.skin.php");
$view = get_view($write, $board, $board_skin_path, 255);
include_once("$board_skin_path/view_image.skin.php");
}
include_once("$g4[path]/tail.sub.php");
?>
#####################################################
2. 해당 게시판 skin 폴더에 view_image.skin.php 파일을 만듭니다.
3. 해피정님 소스를 붙여놓습니다. ( 클릭시 이미지 팝업창 띄우기 등 제거 - 아래 소스)
주소 :
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=16087&sca=&sfl=wr_subject%7C%7Cwr_content&stx=%C7%D1%B9%F8+%BA%B8%B1%E2&sop=and
#############################################
<scRIPT LANGUAGE='Javascript'>
<!--
// 이미지뷰어
var win= null;
image_directory = ""; //배경이미지 경로
clear_img = new Image(); clear_img.src = image_directory + "./img/blank.gif";
<?
//파일 뽑기
$sql2_hp_view_img = " select bf_file from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no limit 0, 10 ";
$result2_hp_view_img = sql_query($sql2_hp_view_img);
for ($j=0; $row2_hp_view_img = sql_fetch_array($result2_hp_view_img); $j++) {
$view_one = "{$g4['path']}/data/file/{$bo_table}/{$row2_hp_view_img['bf_file']}";
?>
view_img<?=$j?> = new Image();
view_img<?=$j?>.src = "<?=$g4['path']?>/data/file/<?=$bo_table?>/<?=$row2_hp_view_img['bf_file']?>";
<? } ?>
function bgChange(imgName) {
document.getElementById('view_img').src = eval(imgName + ".src");
}
//-->
</scRIPT>
<table width="100%" cellspacing="0" cellpadding="0" border="0" align="center">
<tr>
<td style="padding:10 0 20 0;" align="center">
<?
//파일 뽑기
$sql_hp_view_img = " select bf_file from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no limit 0, 10 ";
$result_hp_view_img = sql_query($sql_hp_view_img);
for ($i=0; $row_hp_view_img = sql_fetch_array($result_hp_view_img); $i++) {
//썸네일 코드 시작
$data_path = $g4['path'] . "/data/file/{$bo_table}";//라이브러리 파일 참조
$thumb_path = $data_path . '/thumbOpen';
$view_w = 100; //썸네일 가로사이즈
$view_h = 75; //썸네일 세로사이즈
$sch_q = 100; //썸네일 퀼리티
if (!is_dir($thumb_path)) {
@mkdir($thumb_path, 0707);
@chmod($thumb_path, 0707);
}
$filename = $row_hp_view_img[bf_file]; //파일명
$thumb = $thumb_path.'/'.$filename; //썸네일
if (!file_exists($thumb)) {
$file = $data_path.'/'.$filename; //원본
if (preg_match("/\.(jp[e]?g|gif|png)$/i", $file) && file_exists($file)) {
$size = getimagesize($file);
if ($size[2] == 1)
$src = imagecreatefromgif($file);
else if ($size[2] == 2)
$src = imagecreatefromjpeg($file);
else if ($size[2] == 3)
$src = imagecreatefrompng($file);
else
continue;
$rate = $view_w / $size[0];
$height = (int)($size[1] * $rate);
if ($height < $view_h)
$dst = imagecreatetruecolor($view_w, $height);
else
$dst = imagecreatetruecolor($view_w, $view_h);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $view_w, $height, $size[0], $size[1]);
imagejpeg($dst, $thumb_path.'/'.$filename, $sch_q);
chmod($thumb_path.'/'.$filename, 0707);
}
}
if (file_exists($thumb) && $filename) {
?>
<a href="javascript:void(0);" onMouseOver="bgChange('view_img<?=$i?>');" onMouseOut="bgChange('view_img<?=$i?>');"><img src='<?=$thumb?>' border=0 width="69" height="60"></a>
<?
//onMouseOut="bgChange('clear_img');"
}
}
?>
</td>
</tr>
<tr>
<td align="center" valign="top"><img src="<?=$view_one?>" id="view_img" name="view_img" border="0"></td>
</tr>
</table>
#############################################
4. view.skin.php 에서 해당 링크 부분에
####################################
<span style="cursor:pointer;" onclick="win_open('./view_image.php?bo_table=<?=$bo_table?>&wr_id=<?=$wr_id?>','view_image','left=10,top=10,width=620,height=450,scrollbars=1');">테스트</span>
####################################
위처럼 win_open으로 팝업창을 띄어주면 됩니다.
-----------------------------------------------------------------------------
다시 한번 말씀드지만 해피정님께 사전에 양해를 구하지 못한점 죄송합니다.
삭제 요청 하시면 삭제 하도록 하겠습니다.
위 파일 생성 복사후, view_image.skin.php 에서 폼을 바꿔주시면 됩니다.
즐거운 시간 보내시기 바랍니다 ^^
추천
0
0
댓글 0개