我使用 php 代码进行多个文件上传。它运作良好。但是,当我们单击提交按钮而不上传任何文件时,它显示成功并存储在数据库中作为值 0。我尝试了一些 JavaScript 验证“请上传图片”。但是还在努力...
任何人都可以帮助我..?
这是代码...
> <?php
if(isset($_FILES['files'])){
$errors= array();
foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
$file_name = $key.$_FILES['files']['name'][$key];
$file_size =$_FILES['files']['size'][$key];
$file_tmp =$_FILES['files']['tmp_name'][$key];
$file_type=$_FILES['files']['type'][$key];
if($file_size > 2097152){
$errors[]='File size must be less than 2 MB';
}
$query="INSERT into upload_data (`USER_ID`,`FILE_NAME`,`FILE_SIZE`,`FILE_TYPE`) VALUES('$user_id','$file_name','$file_size','$file_type'); ";
$desired_dir="gallery";
if(empty($errors)==true){
if(is_dir($desired_dir)==false){
mkdir("$desired_dir", 0700); // Create directory if it does not exist
}
if(is_dir("$desired_dir/".$file_name)==false){
move_uploaded_file($file_tmp,"gallery/".$file_name);
}else{ //rename the file if another one exist
$new_dir="gallery/".$file_name.time();
rename($file_tmp,$new_dir) ;
}
mysql_query($query) or die(mysql_error());
}else{
print_r($errors);
}
}
if(empty($error)){
echo "Success";
}
}
?>