2005년 6월 28일 화요일

첨부파일에 앞부분에 파일아이콘 보이게 하기

 테터 툴즈 블로그를 몇군데 보니 다운로드 파일앞에 파일아이콘에 붙어 있길래 zog에서도 따라해봅니다..(단순히 테터 따라잡기 수준일 뿐입니다..)


1. 먼저 첨부 파일을 다운 받아 자신의 블로그밑에 f_icon 이라는 폴더를 만들어 넣어주시기 바랍니다.원하시는 경우폴더명을 바꾸셔도 되지만 코멘트 이모티콘이라 구별되는 의미로 붙인 폴더명이므로 가급적 그대로 사용해주셨으면 합니다..


2. 조그폴더의 index.php 파일 수정


497번째 줄의 $path=pathinfo($data[file_name1]); 밑에 다음과 같이 첨부하세요.


[#!_변경 소스 보기..|변경 소스숨 기기.._!#]



// 06월 28일 첨부 파일 아이콘 별로 표시 시작 by 유메미루 from zeeps.net

    $ext = explode(".", $data[file_name1]);

    $ext = strtolower(trim($ext[count($ext)-1]));


    switch( $ext )

    {

        case "alz" :

        case "ace" :

        case "cap" :

           $ext_img_str1 = $index_url."/f_icon/alz.gif";

           break;

        case "asf" :

        case "avi" :

        case "mpg" :

        case "mpeg" :

        case "wav" :

        case "wma" :

        case "wmv" :

            $ext_img_str1 = $index_url."/f_icon/asf.gif";

            break;

        case "bmp" :

            $ext_img_str1 = $index_url."/f_icon/bmp.gif";

            break;

        case "dll" :

        case "inf" :

        case "sys" :

            $ext_img_str1 = $index_url."/f_icon/dll.gif";

            break;

        case "doc" :

            $ext_img_str1 = $index_url."/f_icon/doc.gif";

            break;

        case "exe" :

            // 확장자가 exe 일때

            $ext_img_str1 = $index_url."/f_icon/exe.gif";

            break;

        case "fla" :

        case "swf" :

        case "swi" :

            $ext_img_str1 = $index_url."/f_icon/swf.gif";

            break;

        case "gif" :

            // 확장자가 gif 일때

            $ext_img_str1 = $index_url."/f_icon/gif.gif";

            break;

         case "hlp" :

         case "chm" :

            $ext_img_str1 = $index_url."/f_icon/hlp.gif";

            break;

        case "hwp" :

            $ext_img_str1 = $index_url."/f_icon/hwp.gif";

            break;

        case "jpg" :

        case "jpeg" :

            // 확장자가 jpg, jpeg 일때

            $ext_img_str1 = $index_url."/f_icon/jpg.gif";

            break;

        case "js" :

        case "css" :

        case "class" :

            $ext_img_str1 = $index_url."/f_icon/js.gif";

            break;

        case "mid" :

            $ext_img_str1 = $index_url."/f_icon/mid.gif";

            break;

        case "mov" :

            $ext_img_str1 = $index_url."/f_icon/mov.gif";

            break;

        case "mp3" :

            $ext_img_str1 = $index_url."/f_icon/mov.gif";

            break;

        case "pcx" :

            $ext_img_str1 = $index_url."/f_icon/pcx.gif";

            break;

        case "pdf" :

            $ext_img_str1 = $index_url."/f_icon/pdf.gif";

            break;

        case "ppt" :

            $ext_img_str1 = $index_url."/f_icon/ppt.gif";

            break;

        case "psd" :

            $ext_img_str1 = $index_url."/f_icon/psd.gif";

            break;

        case "ra" :

        case "rm" :

        case "ram" :

            $ext_img_str1 = $index_url."/f_icon/ra.gif";

            break;

        case "rar" :

            // 확장자가 gif 일때

            $ext_img_str1 = $index_url."/f_icon/rar.gif";

            break;

        case "reg" :

            $ext_img_str1 = $index_url."/f_icon/reg.gif";

            break;

        case "txt" :

            $ext_img_str1 = $index_url."/f_icon/text.gif";

            break;

        case "tif" :

            $ext_img_str1 = $index_url."/f_icon/tif.gif";

            break;

        case "xls" :

            $ext_img_str1 = $index_url."/f_icon/xls.gif";

            break;

        case "zip" :

        case "gz" :

        case "tra" :

            // 확장자가 zip 일때

            $ext_img_str1 = $index_url."/f_icon/zip.gif";

            break;

        default :

            // 조건에 해당하지 않을때

            $ext_img_str1 = $index_url."/f_icon/unknown.gif";

            break;

        }

// 06월 28일 첨부 파일 아이콘 별로 표시 끝


  $downloadlink="<BR><a href='$installedPathURL/download.php?id=$id&no=$data[no]&filenum=1' target=_blank >"."<img src=".$ext_img_str1." border=0> ".$path[basename]."</a>";



[#!_END_!#]


※첨부 파일 2의 경우에도 적을 하실경우에는 458번쨰 줄 아래에 위 소스를 삽입하고 숫자 1을 2로 바꾸면 사용이 가능합니다.


예) $ext_img_str1 ==> $ext_img_str2


후기


원래는 플러그인 형식으로 만들려고 했는데 날씨가 더워서 그런지 귀찮군요,,,플러그인 형식으로 바꿀 여지를 남겨주기 위해 파일 1번에만 적용합니다.


수정1 . 제가 가지고 있지 않은 파일 아이콘을 가지고 계신분은  링크 연결주세요..


수정 2. 변경 소스 다이어트좀 했습니다..  at 2006/06/30/20:30


[#!_보이기..|숨기기.._!#]



    // 06월 28일 첨부 파일 아이콘 별로 표시 시작

    $ext = explode(".", $data[file_name1]);

    $ext = strtolower(trim($ext[count($ext)-1]));


 $ext_img_str1 = $index_url."f_icon/".$ext.".gif";

    if(file_exists($ext_img_str1)) $ext_img_str1 = $index_url."f_icon/unknown.gif";


// 06월 28일 첨부 파일 아이콘 별로 표시 끝


  $downloadlink="<BR><a href='$installedPathURL/download.php?id=$id&no=$data[no]&filenum=1' target=_blank >"."<img src=".$ext_img_str1." border=0>&nbsp;".$path[basename]."</a>";



[#!_END_!#]


수정 3. 올리버네님의 조언으로 소스를 한번 더 수정합니다.  at 2006/07/02 13:40


    // 06월 28일 첨부 파일 아이콘 별로 표시 시작

    $path=pathinfo($data[file_name1]);

    $ext = strtolower($path['extension']);

 $ext_img_str1 = $index_url."f_icon/".$ext.".gif";

    if(file_exists($ext_img_str1)) $ext_img_str1 = $index_url."f_icon/unknown.gif";


// 06월 28일 첨부 파일 아이콘 별로 표시 끝


  $downloadlink="<BR><a href='$installedPathURL/download.php?id=$id&no=$data[no]&filenum=1' target=_blank >"."<img src=".$ext_img_str1." border=0>&nbsp;".$path[basename]."</a>";


댓글 9개:

  1. 그날까지...엉뚱이2005년 6월 30일 오후 1:28

    ㅋㅋㅋ 개미가 기어다니네요? ^^ 귀여워요.

    <!-- <zogNick><A HREF=&#039;http://learning.new21.org/blog/&#039; title=&#039;http://learning.new21.org/blog/&#039; target=_blank >그날까지...엉뚱이</A></zogNick> <zogURL>http://learning.new21.org/blog/</zogURL> -->

    답글삭제
  2. 그날까지...엉뚱이 // 날마다 신규 코멘트 확인해서 새로운 코멘트 등록이 안되면 개미숫자를 한마리씩 늘려볼까 생각중입니다.. 개미로 인해 잠식되면 블로그질도 그만 두어야 ㅋㅋㅋ<br />

    답글삭제
  3. 오,..그 개미 플래쉬파일..개미 부쟈게 많이 나오는 버전으로 해보세요.... ^^

    역시..테터 따라잡기는 재미있어용...ㅋㅋ

    <!-- <homepage>http://foulup.nazzim.net/bbs/view.php?id=replzine&no=1710</homepage> -->

    답글삭제
  4. 파일 아이콘에 대한 리플은 없군요,,역시 인기 없음,,판정!!

    답글삭제
  5. ㅋㅋㅋ 조거들이..좀 섬세한 면이 떨어지는거 같죠?... ^^ 그래도 전 리플달았어요!! "역시..테터 따라잡기는 재미있어용...ㅋㅋ "... 테터따라잡기 => 파일아이콘

    조구만님이 본체 만들어주시고.. 님과 제가 이것저것...깔끔하게 추가하고 코드정리해서..내놓는거 어때요? ^^ (미니앨범.... 설치해보시길....강력추천!)

    <!-- <homepage>http://foulup.nazzim.net/bbs/view.php?id=replzine&no=1710</homepage> -->

    답글삭제
  6. 단 6줄로 코드 정리 완료했답니다..지금은 파일아이콘 모으는 중!!!

    답글삭제
  7. 요즘 블로그질을 잘 안하다보니 이제야 봤습니다. ^^<br />

    zogMan님께 말해서 zog에 추가해도 좋을 거 같습니다<br />

    줄어든 소스 쪽이 낫긴합니다만.<br />

    file_exist 함수가 cpu 자원을 많이 쓰지 않나요?<br />

    {확장자 => 파일이름}<br />

    연관배열로 만들어서 배열에 없으면 unknown 이미지를 출력하는게 좀더 가볍지 않을까 싶네요.<!-- <homepage>http://www.oliverne.com</homepage> -->

    답글삭제
  8. 497번째 줄의 $path=pathinfo($data[file_name1]);<br />

    ---<br />

    소스 들여다보다보니... <br />

    pathinfo 함수가 이미 확장자를 구해주니까.<br />

    확장자는 $path[&#039;extension&#039;]에 저장되어 있을 겁니다. ^^<br />

    <a href=http://kr2.php.net/manual/kr/function.pathinfo.php target=_blank>http://kr2.php.net/manual/kr/function.pathinfo.php</a>

    답글삭제
  9. 올리버네 // 조언 감사합니다..<br />

    연관배열역시 소스가 너무 길어지기 &#46468;문에 차라리 이미지 파일을 많이 사용하는 편으로 가려고 합니다. 그래야 사람들이 쉽게 알아봅니다..<br />

    phpinfo 함수 생각보다 &#44318;찬은 대요,,그걸로 바꿔보겠습니다.

    답글삭제