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

· 2008-01-10 (목) 17:10:46 · 3790 · 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("."); //시작할 폴더위치를 지정한다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
08-04-17 조회 4,282
08-03-14 조회 3,188
08-03-08 조회 3,008
08-03-06 조회 2,980
08-03-03 조회 4,272
08-02-20 조회 2,957
08-02-15 조회 3,867
08-02-11 조회 5,031
08-02-09 조회 5,712
08-02-05 조회 3,803
08-01-14 조회 6,617
08-01-11 조회 7,050
08-01-04 조회 1.1만
07-12-10 조회 4,957
07-12-10 조회 3,815
07-12-04 조회 3,353
07-11-29 조회 3,534
07-11-27 조회 3,895
07-11-23 조회 4,490
07-11-23 조회 4,225
07-11-13 조회 4,351
07-10-19 조회 4,805
07-10-17 조회 5,859
07-10-03 조회 4,890
07-10-02 조회 8,789
07-10-02 조회 4,444
07-09-09 조회 3,413
07-07-29 조회 4,291
07-07-28 조회 4,516
07-07-26 조회 4,424
07-06-19 조회 1.1만
07-06-17 조회 3,592
07-06-15 조회 4,090
07-05-31 조회 3,148
07-05-09 조회 5,309
07-05-04 조회 3,154
07-05-04 조회 3,505
07-04-28 조회 6,399
07-04-26 조회 4,642
07-04-14 조회 5,287
07-04-13 조회 3,697
07-04-12 조회 5,895
07-03-27 조회 3,827
07-03-19 조회 3,505
07-03-13 조회 4,604
07-03-07 조회 4,760
07-03-07 조회 3,269
07-02-25 조회 3,635
07-02-21 조회 4,517
07-02-18 조회 5,037
07-02-12 조회 3,381
07-02-02 조회 4,500
07-01-28 조회 6,110
07-01-27 조회 5,616
07-01-25 조회 3,984
07-01-21 조회 4,615
07-01-19 조회 6,563
07-01-19 조회 8,014
07-01-13 조회 3,473
07-01-09 조회 5,113
06-12-27 조회 3,508
06-11-24 조회 3,637
06-11-18 조회 4,154
06-10-17 조회 5,474
06-10-01 조회 4,377
06-09-26 조회 4,274
06-09-25 조회 4,597
06-09-25 조회 4,292
06-09-22 조회 4,840
06-09-22 조회 3,602
06-09-22 조회 4,433
06-09-13 조회 5,271
06-08-27 조회 4,874
06-08-26 조회 6,226
06-08-26 조회 5,556
06-08-23 조회 5,053
06-07-28 조회 7,154
06-07-24 조회 4,607
06-07-23 조회 5,391
06-07-21 조회 5,150
06-07-19 조회 3,032
06-07-19 조회 2,943
06-07-11 조회 3,600
06-07-11 조회 3,898
06-07-11 조회 4,469
06-07-11 조회 4,921
06-07-11 조회 3,550
06-07-11 조회 9,177
06-07-11 조회 4,039
06-07-11 조회 3,266
06-07-11 조회 3,321
06-07-11 조회 3,249
06-07-11 조회 3,048
06-07-07 조회 4,091
06-06-25 조회 4,445
06-06-15 조회 4,434
06-06-14 조회 4,932
06-06-11 조회 3,508
06-06-10 조회 3,888
06-06-09 조회 3,476