In this php tutorial let us check multiple file upload functionality using php script. This multiple file upload php script will help you to upload multiple files to your website very easily. This multiple file upload php script will also help you to restrict upload file type. Eg: you can tell the script to upload pdf file only, or upload pdf,jpg,doc file only ect by simply giving some configuring option.
Let us check how you can write the code for uploading multiple file in detail.
First of all let us check the html part.
In the html we need a file uploading functionality. So The HTML code for multiple file upload is
<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="files[]" multiple/>
<input type="submit" value="submit"/>
</form>
function
upload_multiple_file($file,$file_dir="user_files") {
$overwrite=0;
$allowed_file_type = array("pdf","ppt","pptx","xls"."xlxs","doc","docx","jpg", "jpeg", "png", "gif");
$max_file_size_check=1;
$max_file_size = 2097152;
foreach($_FILES['files']['name'] as $fkey=> $fname){
$ext = pathinfo($fname, PATHINFO_EXTENSION);
if (!in_array($ext, $allowed_file_type)) {
return "unsupported file format";
break;
}
}
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
$file_name = $_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp_name =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];
if($max_file_size_check < 1) {
if($file_size > $max_file_size){
$fsize=$max_file_size/1048576;
return    'File size must be less than '.$fsize.' MB';
break;
}
}
if(is_dir($file_dir)==false){
$status =  mkdir("$file_dir", 0700);
if($status < 1){
return "unable to create  diractory $file_dir ";
}
}
if(is_dir($file_dir)){
if($overwrite < 1){
move_uploaded_file($file_tmp_name,"$file_dir/".$file_name);
}
}
//  $file_upload_query="INSERT into user_uploads (`u_id`,`file_name`,`file_type`) VALUES('$user_id','$file_name','$file_size','$file_type'); ";
//mysql_query($file_upload_query);
}
return "Success";
}
CREATE
TABLE `test`.`user_uploads` (
`id` INT( 11 ) NOT NULL ,
`u_id` INT( 11 ) NOT NULL ,
`file_name` VARCHAR( 255 ) NOT NULL ,
`file_type` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;
if
(isset($_FILES['files'])){
$res =  upload_multiple_file($_FILES['files'],"user_files");
echo $res;
}
<?php
if(isset($_FILES['files'])){
$res =  upload_multiple_file($_FILES['files'],"user_files");
echo $res;
}
function upload_multiple_file($file,$file_dir="user_files") {
$overwrite=0;
$allowed_file_type= array("pdf","ppt","pptx","xls"."xlxs","doc","docx","jpg", "jpeg", "png", "gif");
$max_file_size = 2097152;
foreach($_FILES['files']['name'] as $fkey=> $fname){
$ext = pathinfo($fname, PATHINFO_EXTENSION);
if (!in_array($ext, $allowed_file_type)) {
return "unsupported file format";
break;
}
}
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
$file_name = $_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp_name =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];
if($max_file_size_check >0) {
if($file_size > $max_file_size){
$fsize=$max_file_size/1048576;
return    'File size must be less than '.$fsize.' MB';
break;
}
}
if(is_dir($file_dir)==false){
$status =  mkdir("$file_dir", 0700);
if($status < 1){
return "unable to create  diractory $file_dir ";
}
}
if(is_dir($file_dir)){
if($overwrite < 1){
move_uploaded_file($file_tmp_name,"$file_dir/".$file_name);
}
}
//  $file_upload_query="INSERT into user_uploads (`u_id`,`file_name`,`file_type`) VALUES('$user_id','$file_name','$file_size','$file_type'); ";
//mysql_query($file_upload_query);
}
return "Success";
}
?>
<form action="" method="POST" enctype="multipart/form-data">
<input type="file" name="files[]" multiple/>
<input type="submit" value="submit"/>
</form> 
No comments:
Post a Comment