2, PHP 코드(파일 업로드, 타임스탬프를 사용한 파일 이름 지정, 세션에 저장된 파일 경로)
- /**
- *Mwbe 버전1.0
- *------------------------- ---------
- *2013-2014 ylt 복사
- *웹: 통신
- *--------- -------------
- *작성자: tao *자료: 2014-7-22
- */
- header("콘텐츠 유형: text/html;charset=utf -8");
- //1단계 $_FILES['pic']["error"]를 사용하여 오류를 확인하세요
- if(isset($_GET["action"])=="img"){
- if($_FILES["img"]["error"] > 0){
- switch($_FILES["img"]["error"]) {
- 사례 1:
- echo "";
- break;
- 사례 2:
- echo "";
- break;
- 사례 3:
- echo "";
- break;
- 사례 4:
- echo "";
- break;
- 기본값:
- echo "";
- }
- 종료;
- }
- $maxsize=2000000; //50k
- //2단계 $ 사용 _FILES["pic "]["size"] 제한 크기 단위 바이트 2M=2000000
- if($_FILES["img"]["size"] > $maxsize ) {
- echo "<스크립트 유형 ='text /javascript'>alert('업로드된 파일이 너무 커서 {$maxsize}바이트를 초과할 수 없습니다.');history.back();";
- exit;
- }
- //3단계 $_FILES["pic"]["type"] 또는 파일 확장자를 사용하여 유형을 제한합니다. MIME image/gif image/png gif png jpg
- /* list($dl, $xl ) =explod ("/", $_FILES["pic"]["type"]);
- if($dl!="image"){
- echo "사진, 다른 형식의 파일을 업로드해주세요. 허용되지 않습니다" ;
- 종료;
- }
- */ bbs.it-home.org
- $allowtype=array("png", "gif", "jpg", "jpeg") ;
- $arr=explode(".", $_FILES["img"]["name"]);
- $hz=$arr[count($arr)-1];
- if( !in_array($ hz, $allowtype)){
- echo " ";
- exit;
- }
- //4단계에서는 전달된 파일의 이름을 바꿉니다
- $filepath="../imgweb/";
- $fileimgweb="imgweb/";// UBB 경로를 준수하기 위해
- $randname=date("Y").date("m").date("d").date("H").date("i").date ("s ").rand(100, 999).".".$hz;
- //임시 위치의 파일을 지정된 디렉터리로 이동
- if(is_uploaded_file($_FILES["img"] [ "tmp_name"])){
- if(move_uploaded_file($_FILES["img"]["tmp_name"],$filepath.$randname)){
- echo "";
- session_start();
- $_SESSION['images'] = $fileimgweb.$randname;
- }else{
- echo " ";
- }
- }else{
- echo"< ; script type='text/javascript'>alert('업로드된 파일이 아님');history.back();";
- }
- }
- ?>
-
코드 복사
|