채택완료

파일 첨부시 지정한 형식으로만 파일을 첨부 가능하게 하는 방법.

2018-03-14 (수) 01:52:34 3,462

게시판에서 파일 첨부시 지정한 형식으로만 (.jpg;*.jpeg;*.gif;*.png;*.swf;) 파일을 첨부 할 수 있게 지정하려고 합니다.

어떤 방식을 사용하면 될까요? 

지정할 게시판들은 여분 필드 값 "Y"로 지정한 상태입니다.

도움 주시면 감사하겠습니다.

답변 4개

채택된 답변
+20 포인트

swf는 모르겠지만 이미지는 아래의 php코드로 가능합니다.

Copy
$imgtype = exif_imagetype($filepath);

아래의 링크에 Predefined Constants 부분을 보시고 이미지 파일은 필터 하시면 되겠습니다.

http://php.net/manual/en/function.exif-imagetype.php

자바스크립트도 괜찮을 것 같아요.

https://www.codexworld.com/file-type-extension-validation-javascript/

Copy
<input type="file" id="file" onchange="return fileValidation()"/>

 

<script>

function fileValidation(){

    var fileInput = document.getElementById('file');

    var filePath = fileInput.value;

    var allowedExtensions = /(\.jpg|\.jpeg|\.png|\.gif)$/i;

    if(!allowedExtensions.exec(filePath)){

        alert('Please upload file having extensions .jpeg/.jpg/.png/.gif only.');

        fileInput.value = '';

        return false;

    } else {

        return ture;

    }

}

</script>

첨부파일 처리는

/bbs/write_update.php

파일안에 있습니다

물론 이 파일안에 확장자 제어도 있어요

그 부분즈음에

지정한 보드일때

추가적인 확장자 제어로직을 넣으면 될겁니다

확장 자를 검색 해서 조건 문으로 차단하면 됩니다

답변을 작성하려면 로그인이 필요합니다.