디렉토리 내의 이미지보기(겔러리) 소스 입니다.

· 2008-01-10 (목) 17:10:46 · 2685 · 2
아래소스는 디렉토리 내의 이미지보기(겔러리) 소스 입니다.
사용하기 편하고 업로드 방식이 계정에 직접 파일을 한꺼번에 올려주면..
해당폴더의 파일을 보여주는 형식 입니다.
제가 사용하게 된지가 오래 되어서 출처는 잘 모르겠습니다.
조금 불편하고 개선할 부분이 있어서 혹시 관심이 있는 분이 있으시면..
수정 부탁 드립니다.

-수정할 사항-

1) 썸레일 기능이 없습니다.
2) 이미지 클릭후 팝업창에서 원본이미지 클릭하면 윈도우가 닫혔으면 좋겠습니다.

현재사용하는 페이지 : http://lbw.kr/icon/icons.php


<!--소스시작-->

<?
//$code = 파일확장자
//$imagefile = 그림파일명
//$imagewidth = 이미지의 가로길이
//$imageheight = 이미지의 세로길이
//$page = 페이지번호
$tdwidth = 100;  // 테이블 한칸의 가로길이
$tdheight = 100;  // 테이블 한칸의 세로길이
$imggaro = 6; // 그림 가로 출력 갯수
$imgsero = 5; // 그림 세로 출력 갯수
$viewimg = $imggaro * $imgsero;  // 한화면의 그림 출력 갯수
?>
<?
    $handle=opendir("."); //시작할 폴더위치를 지정한다.
    
    //그림파일 전체 갯수 구함
    while ($imagefile = readdir($handle))
    {
        $code = substr($imagefile,-3);  //확장자검색
        if($code == jpg || $code == gif)  //그림파일확인
        {
            $num++;
        }
    }
    //echo("그림파일 : $num 개");
    if($page == "" || $page == "0" || $page == "1")
    {
        $page = "1";
    }
    //NEXT , PREVIEW 만들기.
    $next = $page+1;
    $preview = $page-1;
    if($page == 1)
    {
        //echo("[ 이전 ]");
        //echo("<a href=$PHP_SELF?page=$next><b>[ 다음 ]</b></a> <br>");
    }
    else if($page == intval($num/$viewimg)+1)
    {
        //echo("<a href=$PHP_SELF?page=$preview><b>[ 이전 ]</b></a> ");
        //echo("[ 다음 ]<br>");
    }
    else
    {
        //echo("<a href=$PHP_SELF?page=$preview><b>[ 이전 ]</b></a> ");
        //echo("<a href=$PHP_SELF?page=$next><b>[ 다음 ]</b></a> <br>");
    }
 
    //페이지 설정
    $for = intval($num/$viewimg)+1;
    for($i=1; $i <= $for; $i++)
    {
        if($page == $i)
        {
            echo(" <a href=$PHP_SELF?page=$i><b>[$i]</b></a> ");
        }
        else
        {
            echo(" <a href=$PHP_SELF?page=$i>[$i]</a> ");
        }
    }
    closedir($handle);
?>
<table width="100%" height="500" cellpadding="2" cellspacing="2" border="0">
<tr>
<?
    $handle=opendir("."); //시작할 폴더위치를 지정한다.
    
    while ($imagefile = readdir($handle))
    {
            $code = substr($imagefile,-3);  //확장자검색
            if($code == jpg || $code == gif)  //그림파일확인
            {    
                $k++;
                if(    $k > (($viewimg*$page)-$viewimg) && $k <= ($viewimg*$page))  //나타내야할 부분 추출 한다.
                {
                    $imagehw = GetImageSize($imagefile);  // 이미지 사이크를 구함.
                    $imagewidth = $imagehw[0];  // 이미지 가로길이
                    $imageheight = $imagehw[1];  // 이미지 세로길이
                    $imagewidth20 = $imagewidth+20;
                    $imageheight20 = $imageheight+20;

                    // 이미지 가로길이가 테이블 한칸 가로길이보다 클경우
                    if($imagewidth >= $tdwidth)
                    {
                        $x = $imagewidth/$tdwidth;
                        $imageheight = intval($imageheight/$x);
                        $imagewidth = $tdwidth;
                    }
                    // 이미지 세로길이가 테이블 한칸 세로길이보다 클경우
                    if($imageheight > $tdheight)
                    {
                        $x = $imageheight/$tdheight;
                        $imagewidth = intval($imagewidth/$x);
                        $imageheight = $tdheight;
                    }
                    //그림 세로 출력수
                    if($sero < $imgsero)
                    {
                        echo("<td bgcolor=#f9f9f9 align=center valign=middle width=$tdwidth height=$tdheight><a href=\"javascript:void(window.open('$imagefile','','scrollbars=no,width=$imagewidth20,height=$imageheight20'))\" onFocus=\"this.blur()\"><img src=$imagefile width=$imagewidth height=$imageheight></a></td>\n");
      
                        $garo++;
                        //그림 가로 출력수
                        if($garo%$imggaro == 0)
                        {
                            $sero++;
                            if($sero != $imgsero)
                            {
                                echo("</tr>\n<tr>\n");
                            }
                        }
                    }
                }
            }
        }
    closedir($handle);
?>
</tr>
</table>

<!--소스끝-->
[이 게시물은 관리자님에 의해 2011-10-31 17:12:10 PHP & HTML에서 이동 됨]
|

댓글 2개

쵝오 !
위에서 12번째줄의 시작폴더를 바꾸면 이미지가 나타나지 않네요...
그대로 쓰면 잘되는데.......
$handle=opendir("."); //시작할 폴더위치를 지정한다.
댓글을 작성하시려면 로그인이 필요합니다.

팁게시판

6,077건

디자인과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
제목 글쓴이 날짜 조회
08-07-06 조회 2,318
08-05-21 조회 3,475
08-05-13 조회 3,340
08-04-17 조회 3,712
08-02-19 조회 2,487
08-01-18 조회 2,695
08-01-10 조회 2,686
07-10-22 조회 2,418
07-10-09 조회 3,153
07-10-03 조회 2,406
07-07-06 조회 2,973
07-07-06 조회 3,333
07-07-06 조회 2,950
07-06-28 조회 2,500
07-06-05 조회 2,364
07-06-05 조회 2,914
07-05-30 조회 2,241
07-05-02 조회 2,642
07-04-15 조회 3,990
07-04-11 조회 2,544
07-04-05 조회 2,816
07-03-31 조회 2,053
07-03-31 조회 2,981
07-03-30 조회 2,668
07-03-24 조회 2,971