2011-03-19 7 views
0

아래의 스크립트를 사용하여 이미지를 특정 폴더에 업로드하는 방법을 알려주십시오.폴더에 이미지를 업로드하는 방법

전체 이미지를 imagefolder에 저장하고 축소판을 이미지 폴더 안에 저장하고 싶습니다.

코드는 다음과 같습니다.

<?php 

$upload_image_limit = 5; // How many images you want to upload at once? 
$upload_dir = ""; // default script location, use relative or absolute path 
$enable_thumbnails = 1 ; // set 0 to disable thumbnail creation 
$max_image_size = 1024000 ; // max image size in bytes, default 1MB 

##################### THUMBNAIL CREATER FROM GIF/JPG/PNG 

function make_thumbnails($updir, $img){ 

$thumbnail_width = 80; 
$thumbnail_height = 60; 
$thumb_preword = "thumb_"; 

$arr_image_details = GetImageSize("$updir"."$img"); 
$original_width = $arr_image_details[0]; 
$original_height = $arr_image_details[1]; 

if($original_width > $original_height){ 
$new_width = $thumbnail_width; 
$new_height = intval($original_height*$new_width/$original_width); 
} else { 
$new_height = $thumbnail_height; 
$new_width = intval($original_width*$new_height/$original_height); 
} 

$dest_x = intval(($thumbnail_width - $new_width)/2); 
$dest_y = intval(($thumbnail_height - $new_height)/2); 



if($arr_image_details[2]==1) { $imgt = "ImageGIF"; $imgcreatefrom = "ImageCreateFromGIF"; } 
if($arr_image_details[2]==2) { $imgt = "ImageJPEG"; $imgcreatefrom = "ImageCreateFromJPEG"; } 
if($arr_image_details[2]==3) { $imgt = "ImagePNG"; $imgcreatefrom = "ImageCreateFromPNG"; } 


if($imgt) { 
$old_image = $imgcreatefrom("$updir"."$img"); 
$new_image = imagecreatetruecolor($thumbnail_width, $thumbnail_height); 
imageCopyResized($new_image,$old_image,$dest_x, 
$dest_y,0,0,$new_width,$new_height,$original_width,$original_height); 
$imgt($new_image,"$updir"."$thumb_preword"."$img"); 
} 

} 

################################# UPLOAD IMAGES 

foreach($_FILES as $k => $v){ 

$img_type = ""; 

### $htmo .= "$k => $v<hr />"; ### print_r($_FILES); 

if(!$_FILES[$k]['error'] && preg_match("#^image/#i", $_FILES[$k]['type']) && $_FILES[$k]['size'] < $max_image_size){ 

$img_type = ($_FILES[$k]['type'] == "image/jpeg") ? ".jpg" : $img_type ; 
$img_type = ($_FILES[$k]['type'] == "image/gif") ? ".gif" : $img_type ; 
$img_type = ($_FILES[$k]['type'] == "image/png") ? ".png" : $img_type ; 

$img_rname = $_FILES[$k]['name']; 
$img_path = $upload_dir.$img_rname; 

copy($_FILES[$k]['tmp_name'], $img_path); 
if($enable_thumbnails) make_thumbnails($upload_dir, $img_rname); 
$feedback .= "Image and thumbnail created $img_rname<br />"; 

} 
} 

############################### HTML FORM 
while($i++ < $upload_image_limit){ 
$form_img .= '<label>Image '.$i.': </label> <input type="file" name="uplimg'.$i.'"><br />'; 
} 

$htmo .= ' 
<p>'.$feedback.'</p> 
<form method="post" enctype="multipart/form-data"> 
'.$form_img.' <br /> 
<input type="submit" value="Upload Images!" style="margin-left: 50px;" /> 
</form> 
'; 

echo $htmo; 

?> 

감사합니다.

+0

, 당신의 코드를 읽을 수 없습니다. 들여 쓰기 된 코드로 관련된 부분을 놓을 수 있습니까? – JohnP

+0

코드를 읽을 수있게 만들고 질문의 관련 부분 만 입력하십시오. – Shameer

답변

0

코드 그것은하는 777 권한 (chmod를)있는 폴더 경로로, 코드가 확인 경우이 $upload_dir = "imagefolder";

0

, 당신은 변수 $ upload_dir을 변경해야 다른 폴더 변화로 변경, 잘 작동 실행, 다시 쓰기 및 읽기에 대한 공용, 그룹 및 소유자의 사용 권한을 폴더에 부여합니다. 이 게시물을 찾고에서 볼 수 있듯이

예를

$upload_dir="./imagefolder"; 
관련 문제