이번 서버 교체과정에서 제로보드한글파일지원이 안되더라구요
새로등록하기 힘들어서 팁을 뒤져보니 좋은 자료 하나 공유합니다.
| 루트맨님께서 팁을 올려주신 방법을 view뿐만 아니라 추출하고 새창으로 이미지를 볼때에도 적용하는 방법을 추가로 덮붙입니다. 우선 이미지명이 한글로 되어 있으면 그림이 깨져서 나옵니다. 이것을 제대로 보기위해서는 각자의 컴퓨터의 익스플로러의 설정을 바꾸어 주셔야 합니다. 도구 - 인터넷 옵션 - 고급 - url을 항상 utf-8로 보냄 이놈의 체크를 없애 주셔야 하지요. 그런데 클라이언트의 컴퓨터가 모두 이렇게 되어 있다면 상관이 없겠지만... 그 홈페이지의 클라이언트들이 모두 설정을 하는 것보다 그 홈페이지 관리인의 조금의 수정이 유저들에게 작은 배려가 아닐까 생각합니다. 우선 수정해야 할 것들은 1. bbs(제로보드 폴더)/include/list_check.php <-- 게시물을 볼때 2. bbs(제로보드 폴더)/outlogin.php <-- 갤러리 추출 3. 해당스킨/list_main.php <-- 게시판 목록 부분 4. 해당스킨/해당파일.php <-- 밑에서 차근차근 설명 1. bbs(제로보드 폴더)/include/list_check.php (루트맨님이 올린 부분) 이파일을 열어 보면 if(eregi(".jpg",$file_name1)||eregi(".gif",$file_name1)||eregi(".png",$file_name1)) $upload_image1="<img src=$data[file_name1] border=0 name=zb_target_resize style="cursor:hand" onclick=window.open(this.src)><br>"; if(eregi(".jpg",$file_name2)||eregi(".gif",$file_name2)||eregi(".png",$file_name2)) $upload_image2="<img src=$data[file_name2] border=0 name=zb_target_resize style="cursor:hand" onclick=window.open(this.src)><br>"; 이부분이 있습니다. 이부분을 주석처리를 하던지 아니면 지우시던지 하고요. 밑의 소스를 첨가 하십시요. if(eregi(".jpg",$file_name1)||eregi(".gif",$file_name1)||eregi(".png",$file_name1)) { $file_name1_ = str_replace("%2F", "/", urlencode($data[file_name1])); $upload_image1="<img src=$file_name1_ border=0 name=zb_target_resize style="cursor:hand" onclick=window.open(this.src)><br>"; } if(eregi(".jpg",$file_name2)||eregi(".gif",$file_name2)||eregi(".png",$file_name2)) { $file_name2_ = str_replace("%2F", "/", urlencode($data[file_name2])); $upload_image2="<img src=$file_name2_ border=0 name=zb_target_resize style="cursor:hand" onclick=window.open(this.src)><br>"; } 이렇게 수정을 하시면 게시물을 보았을때 나오는 한글이미지가 깨지는 것을 방지 할 수 있습니다. ============================================================================================================ 2. bbs(제로보드 폴더)/outlogin.php 이파일을 보시면 // 갤러리 이미지 뽑아오는 스킨 function print_gallery($skinname, $title, $id, $num=10, $xsize=80, $ysize=80, $xnum=10) { ......... 이 부분이 있을 것 입니다. 여기서 조금만 밑을 보시면 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=""; 이 부분이 있습니다. 이놈은 지우지 말고 이놈 바로 밑에 다가 if(eregi(".jpg",$data[s_file_name1])||eregi(".gif",$data[s_file_name1])||eregi(".png",$data[s_file_name1])) { $file_name1_ = str_replace("%2F", "/", urlencode($data[file_name1])); $upload_image1="<img src=$file_name1_ border=0 name=zb_target_resize style="cursor:hand" onclick=window.open(this.src)><br>"; } 이놈을 쳐워 넣습니다. 그리고 바로 밑에 if($filename) $imgList.="<a href='".$_zb_url.$target."&no=$data[no]'><img src='$filename' border=1 style=border-color:black width=$xsize height=$ysize vspacing=10 hspacing=10></a>"; else $imgList.="<a href='".$_zb_url.$target."&no=$data[no]'><img src='[dir]t.gif' border=1 style=border-color:black width=$xsize height=$ysize vspacing=10 hspacing=10></a>"; 이놈이 있는데 이 부분 중 <img src='$filename' border=1 style=border-color:black width=$xsize height=$ysize vspacing=10 hspacing=10></a>"; 이부분을 <img src='$_zb_url$file_name1_' border=1 style=border-color:black width=$xsize height=$ysize vspacing=10 hspacing=10></a>"; 이렇게 수정을 해주시면 됩니다. 바뀌 부분은 이미지의 경로 부분이죠.^^ ============================================================================================================ 3. 해당스킨/list_main.php 갤러리 게시판의 스킨은 대부분 게시판 목록에 이미지를 꺼내어 놓잖아요. 그 게시판 목록 부분입니다. 그런데 스킨을 만드시는 분마다 코딩하는 방법이 달라서요.. 제가 만든 siche_v5_gallrey이라는 스킨을 예로 들어서 설명 하겠습니다. siche_v5_gallrey 이놈은 스킨 자료실에서 siche라고 검색을 하시면 찾을수 있을 것입니다. list_main.php을 열어 보시면 제일 처음 부분에 <? unset($s_info); $_srcname="$dir/noscreenshot.gif"; $_xsize=100; $_ysize=100; $_alink=""; if($data[file_name1]) { $s_info = @getimagesize($data[file_name1]); if($s_info[2]>0&&$s_info[2]<4) { $_xsize = $s_info[0]; if($_xsize>$_hsize) $_xsize=$_hsize; $_srcname = $data[file_name1]; $_alink="<a href=.javascriptvoid(window.open('$dir/show_pic.php?file=$data[file_name1]','$data[no]','width=$s_info[0],height=$s_info[1],resizable=yes,toolbars=no,scrollbars=auto')) onfocus=blur()>"; } } $_x ++; $_temp = $_x % 4; ?> 이렇게 되어 있습니다. 이놈을 <? unset($s_info); $_srcname="$dir/noscreenshot.gif"; $_xsize=100; $_ysize=100; $_alink=""; if(eregi(".jpg",$file_name1)||eregi(".gif",$file_name1)||eregi(".png",$file_name1)) { $file_name1_ = str_replace("%2F", "/", urlencode($data[file_name1])); } if($data[file_name1]) { $s_info = @getimagesize($data[file_name1]); if($s_info[2]>0&&$s_info[2]<4) { $_xsize = $s_info[0]; if($_xsize>$_hsize) $_xsize=$_hsize; $_srcname = $file_name1_; $_alink="<a href=.javascriptvoid(window.open('$dir/show_pic.php?no=$data[no]','$data[no]','width=$s_info[0],height=$s_info[1],resizable=yes,toolbars=no,scrollbars=auto')) onfocus=blur()>"; } } $_x ++; $_temp = $_x % 5; ?> 이렇게 수정 하시고 조금 밑에 보시면 <?=$_alink?><img src=<?=$_srcname?> border=0 width=120 height=80></a>이런 부분이 있습니다. 이놈을 <?=$_alink?><?=$upload_image1?></a> 이렇게 수정 하십시요. 그리고 위에서 수정한 곳의 바뀐 부분은 중간에 if(eregi(".jpg",$file_name1)||eregi(".gif",$file_name1)||eregi(".png",$file_name1)) { $file_name1_ = str_replace("%2F", "/", urlencode($data[file_name1])); } 이놈이 들어 갔고요. $_srcname = $data[file_name1]; 이놈에서 $_srcname = $file_name1_; 이렇게 바뀌고 <a href=.javascriptvoid(window.open('$dir/show_pic.php?file=$data[file_name1]' 여기서 file=$data[file_name1] 이놈 대신 no=$data[no]이 들어 갔습니다. 여기서 링크를 수정 하는 이유는 다음 파일을 수정하는 것과 연관이 있습니다. ============================================================================================================ 4. 해당파일.php 제가 예로 든 스킨은 게시판 목록에서 그림을 클릭 하면 그림 크기에 맞는 새창이 띄어지고 그 창에 그림이 나오는 방식의 스킨입니다. 그렇게 되면 그 놈도 한글이름인 이미지가 있으면 깨지겠죠? 예로 든 스킨에 그 새창이 나오는 창의 파일 이름은 show_pic.php 이 파일이 입니다. 이파일 제일 첫부분에 <? include "../../_head.php"; $query = mysql_query("select no,file_name1,s_file_name1 from zetyx_board_bbs_gallery where no = $no",$connect); $no = mysql_result($query,0,0); $file_name1 = mysql_result($query,0,1); $s_file_name1 = mysql_result($query,0,2); if(eregi(".jpg",$s_file_name1)||eregi(".gif",$s_file_name1)||eregi(".png",$s_file_name1)) { $file_name1_ = str_replace("%2F", "/", urlencode($file_name1)); } ?> 이렇게 넣어 주십시요. 그리고 이미지 소스 부분 <img src=../../<?=$file?> border=0> 이부분을 <img src=../../<?=$file_name1_?> border=0> 이렇게 바꾸어 주시면 됩니다. ============================================================================================================ 제가 말주변이 없어서리..어떻게 잘 전달이 되었는지 모르겠네요.. 우선 제가 써먹은 것을 고대로 올려 놓았는데요. 스킨 부분 수정, 그러니깐 list_main.php과 마지막 파일 같은 부분은 스킨 마다 다를수 있음을 유의 하시고요. 이 글을 참고로 충분히 응용할 수 있을 꺼라 생각합니다. |
비씨파크 주식회사, 대표이사 : 박병철 개인정보보호책임자 : 박병철
사업자등록번호 : 114-86-19888 |
본사 : 서울특별시 서초구 서초대로73길, 42, 1307호
전자우편 : master@bcpark.net |
(전화전 이용문의 게시판 필수)
전화: 02-534-982구(09:00~18:00) |
팩스: 02-535-155구 |
긴급: 010-9774-988삼
ㆍ저작권안내 : 비씨파크의 모든 컨텐츠(기사)는 저작권법에 보호를 받습니다. 단, 회원들이 작성한 게시물의 권리는 해당 저작권자에게 있습니다. 비씨파크에 게재된 게시물은 비씨파크의 입장과 다를 수 있습니다. 타인의 저작물을 무단으로 게시, 판매, 대여 또는 상업적 이용시 손해배상의 책임과 처벌을 받을 수 있으며, 이에 대해 책임을 지지 않습니다.
ㆍ쇼핑몰안내 : 비씨파크는 통신판매중개자로서 상품 주문, 배송 및 환불의 의무와 책임은 각 판매 업체에 있습니다.
Copyright ⓒ 2000-2026 BCPARK Inc. All Right Reserved.