In this tutorial we will make a multi-file Upload with PHP system with verification for the file extension and size, to make a secure upload and save the file information into a MySQL database.
Create database and table
CREATE TABLE IF NOT EXISTS `file` (
`file_id` int(10) NOT NULL AUTO_INCREMENT,
`file_name` varchar(120) NOT NULL,
`file_status` enum('0','1') NOT NULL COMMENT '0-active,1-inactive',
PRIMARY KEY (`file_id`)
) ENGINE=MyISAM DEFAULT CHARSET=ut
config.php
<?php
$conn = @mysql_connect("localhost","root","");
mysql_select_db("phpcooker_script",$conn);
function valid_img($type){
if($type=="image/gif" || $type=="image/jpeg" || $type=="image/jpg" || $type=="image/png"){
return true;
}else{<br>
return false;
}
}
?>
index.php
<?php
include"confing.php";
if(isset($_REQUEST['save'])){
for($i=0;$i<count($_FILES['image']['name']);$i++){
//image data handling
$_FILES["image"]["size"][$i];
if(valid_img($_FILES['image']['type'][$i])== true){<br>
if($_FILES["image"]["size"][$i] <= 2097152){
$image_name = rand()."_".$_FILES['image']['name'][$i];
move_uploaded_file($_FILES['image']['tmp_name'][$i],"upload/".$image_name);
//insert query and exicution of query
$query = "insert into file(file_name,file_status) values('$image_name',1)";
if(mysql_query($query)){
echo"<script>alert('data successfully saved ')</script>";
//echo"<script>window.location='index.php'</script>";
}else{
echo"failed ".mysql_error();
}
}else{
echo"<script>alert('image size not larger to 1 MB ')</script>";
}
}else{
echo"<script>alert('invalid Image')</script>";
}
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Multiple File Upload In PHP</title>
<link rel="stylesheet" href="pagination.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> />
</head>
<body>
<div class="container">
<h1>Multiple File Upload In PHP</h1>
<br /> <br />
<form class="form-horizontal" method="post" enctype="multipart/form-data" >
<div class="form-group has-success has-feedback">
<label class="control-label">Select File</label>
<input id="input-4" name="image[]" type="file" multiple class="file-loading">
</div>
<div class="form-group has-success has-feedback">
<div class="col-sm-12" style="text-align:center;" >
<button type="submit" class="btn btn-primary" name="save" value="save" >Upload</button>
</div>
</div>
</form>
<div class="row">
<?php
$query = "select * from file order by file_id desc";
$rs = mysql_query($query) or die("failed ".mysql_error());
while($data = mysql_fetch_array($rs))
{
?>
<div class="col-md-4">
<div class="thumbnail">
<img src="upload/<?php echo $data["file_name"]; ?>" alt="Lights" style="width:100%">
<div class="caption">
</div>
</div>
</div>
<?php
}
?>
</div>
</div>
</body>
</html>