[제로] 최근갤러리를 썸네일을 이용해서 생성하고 이미지만 새창으로 띄우는 팁
페이지 정보

짧은주소
-
https://yadolee.com/tip/1 주소복사
평점
본문
아래의 소스는 제로보드 디렉토리내에 있는 outlogin.php 파일에 새로운 펑션을 추가하는 내용입니다..
print_pic 이라는 펑션을 새롭게 정의함으로써 최근갤러리에 이 펑션을 쓰기 위해서는 print_pic 이라는 명령어를 써야 합니다..
아래의 소스를 outlogin.php 파일에 넣고 저장합니다..
소스를 넣는 위치는 outlogin.php 파일의 가장 아래로 내려가면
?>
으로 파일이 끝납니다.. ?> 바로 위에 붙여넣기 하시면 됩니다..
// 최근 겔러리 (팝업형)
function print_pic($skinname, $title, $id, $num=10, $xsize=80, $ysize=80, $xnum=10) {
global $_zb_path, $_zb_url, $connect, $t_board, $admin_table, $HTTP_SESSION_VARS;
if(!$skinname||!$id) return;
$str = zReadFile($_zb_path."latest_skin/".$skinname."/main.html");
if(!$str) {
echo "지정하신 $skinname 이라는 최근목록 스킨이 존재하지 않습니다<br>";
return;
}
$tmpResult = mysql_query("select use_alllist from $admin_table where name='$id'") or die(mysql_error());
$setup = mysql_fetch_array($tmpResult);
if($setup[use_alllist]) $target = "zboard.php?id=".$id;
else $target = "view.php?id=".$id;
$result = mysql_query("select * from $t_board"."_$id order by no desc limit $num", $connect) or die(mysql_error());
$i = 0;
while($data=mysql_fetch_array($result)) {
$subject = cut_str(stripslashes($data[subject]),$textlen)."</font></b>";
if(eregi("\.gif|\.jpg",$data[file_name1])) $filename = $_zb_url.$data[file_name1];
elseif(eregi("\.gif|\.jpg",$data[file_name2])) $filename = $_zb_url.$data[file_name2];
else $filename= "";
$image_size = @getimagesize($filename);
$thumb_name = $_zb_url."data/$id/small_".$data[no].".thumb";
if($filename) $imgList.="<a href=# onclick=\"window.open('".$_zb_url."view_pic.php?file=$filename','dexPic','width=$image_size[0],height=$image_size[1],toolbars=no,scrollbars=no')\"><img src='$thumb_name' border=1 style=border-color:black vspacing=10 hspacing=10></a>";
else $imgList.="<a href='".$_zb_url.$target."&no=$data[no]'><img src='$thumb_name' border=1 style=border-color:black vspacing=10 hspacing=10></a>";
$i++;
if($i>=$xnum) {
$imgList.="<br>";
$i=0;
} else {
$imgList.=" ";
}
}
$str = str_replace("[title]","<a href='".$_zb_url."zboard.php?id=".$id."'>".$title."</a>",$str);
$str = str_replace("[img]",$imgList,$str);
$str = str_replace("[dir]",$_zb_url."latest_skin/".$skinname."/images/",$str);
echo $str;
}
-------------------
최근갤러리의 이미지를 새창으로 띄우기 위해서는 view_pic.php 라는 파일이 필요합니다..
=================================== view_pic.php ======
<?
$file_url = urldecode($_GET['file']);
?>
<html>
<head>
<title>Gallery View</title>
</head>
<body topmargin='0' leftmargin='0' marginwidth='0' marginheight='0'>
<a href=# onclick=window.close()><img src=<?=$file_url?> border=0></a>
</body>
</html>
=======================================================
이런 내용의 파일을 만들어서 제로보드 디렉토리에 넣어둡니다..
outlogin.php 파일과 view_pic.php 파일을 제로보드 디렉토리에 업로드 한후
최근갤러리가 사용되는 index 페이지에 최근갤러리 불러오는
<?print_gallery("default/default_gallery", "갤러리", "skin", 6, 80, 40)?>
위와 같은 소스를 수정해 줍니다..
<?print_pic("default/default_gallery", "갤러리", "skin", 6, 80, 40)?>
추천인

Progress Bar 76.42%
-
[배경 화면] 프랑스의 에귀으 듀 샤흐도네(Aiguille du Chardonnet)산으로 스위스와 접경지에 위치해 있습니다. /*0) generatedType=2; if (generatedType==2) { dMap.style.cursor = "pointer"; dMap.onclick = function(e) {initGmapsLoader(e||event)}; var t = document.createTextNode("로딩하려면 클릭하세요"), d = document.createElement("div"); d.appendChild(t); d.style.cssText="background-color:#e5e5e5; filter:alpha(opacity=80); opacity:0.8; padding:1em; font-weight:bold; text-align:center; position:absolute; left:0; box-sizing:border-box; width:100%; max-width:500px; top:0"; dMap.appendChild(d); } function CreateGMapgmap202421141257() { var dMap = document.getElementById("gmap202421141257"); if (dMap) dMap = dMap.parentNode; else dMap = document.getElementById("wgmap202421141257"); if (!dMap) return; if (dMap.ckemap) { var map = dMap.ckemap.map, center = map.getCenter(); google.maps.event.trigger(map, "resize"); map.setCenter(center); return; } dMap.onclick = null; var mapOptions = { zoom: 11, center: [45.96864,7.00157], mapType: 0, zoomControl: "Default", mapsControl: "Default", heading: 0, tilt: 0, overviewMapControlOptions: {opened:true}, pathType: "Default", googleBar: false }; var myMap = new CKEMap(dMap, mapOptions); dMap.ckemap=myMap; } if (!window.gmapsLoaders) window.gmapsLoaders = []; window.gmapsLoaders.push(CreateGMapgmap202421141257); if (generatedType==3) window.gmapsAutoload=true; window.gmapsKey="AIzaSyApiu_e4Br_dRpB-RNC3XgioygMilKhadA"; /*]]>*/ /* CK googlemapsEnd v3.6 */2024-03-05
-
[공지사항] 특별한 버그가 발견되지 않으면 공개하도록 하겠습니다.2024-01-23
-
[공지사항] 한가지를 빼먹었습니다 사운드클라우드도 썸네일을 생성합니다 사운드클라우드는 meta tag > og:image > content의 url를 통해 이미지를 추출2023-05-05
-
[공지사항] 제법 추가해야 할 소스가 많습니다 또한 외부 프로그램(php exec 함수 이용)도 필요해요 ffmpeg, youtube-dl, twitter-media-downloader 간략하게 설명을 드려 볼게요 twitter-media-downloader은 트위터 트윗 이미지를 추출하는 용도 youtube-dl은 트위터 트윗 이미지 및 동영상 url, 페이스북 watch 동영상 url를 추출하는 용도 ffmpeg는 페이스북 watch의 동영상 url를 이용해 포스터 이미지를 추출하는 용도 인스타그램은 meta tag > og:image > content의 url를 통해 이미지를 추출 그 이미지를 게시판 설정 크기로 썸네일화하기2023-05-04
-
[공지사항] 네 맞습니다. Tagify 기능이 훌륭해 변경해 놓았습니다. 한번 적용해 보세요.2022-12-25
-
[영어 문법] 7년 전 게시되었을 때에는 재생에 문제가 없었던 것으로 기억하고 있었으나 현재에는 재생 목록 파라미터가 변경된 걸로 확인했습니다. 수정완료하였으며 3000점의 경험치를 제공해 드렸습니다. 오류 제보 감사드립니다.2022-12-04
-
[공지사항] 공지와 연관되지 않는 댓글은 자제 부탁드립니다.2022-12-03
-
[공지사항] SortableJS를 이용했습니다. https://inpa.tistory.com/entry/%EB%93%9C%EB%9E%98%EA%B7%B8-%EC%95%A4-%EB%93%9C%EB%A1%AD-Drag-Drop-%EA%B8%B0%EB%8A%A5 {코드} https://github.com/SortableJS/Sortable {코드}위 두 링크를 참조해 보세요.2022-11-27
댓글
첫 번째 댓글을 남겨 주세요