входной файл php продолжает вставлять в базу данных

0

У меня есть два поля ввода файла. Я хочу, чтобы оба они были выбраны для вставки в базу данных. Если выбран только один файл, который не будет вставлен в базу данных...

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 photo ('id','name','size','type') VALUES('','$file_name','$file_size','$file_type'); ";
    $desired_dir="user_data";
    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,"$desired_dir/".$file_name);
        }else{                                  // rename the file if another one exist
            $new_dir="$desired_dir/".$file_name.time();
             rename($file_tmp,$new_dir) ;               
        }
     mysql_query($query);           
    }else{
            print_r($errors);
    }
}
if(empty($error)){
    echo "Success";
}
}


<form action="" method="POST" enctype="multipart/form-data">
    <input type="file" name="files[]" multiple/>
    <input type="file" name="files[]" multiple/>
    <input  type="submit"  />  
</form>

этот код работает хорошо, но сохраняет вставку в базу данных, когда выбран только один файл. Как я могу прекратить вставку в базу данных, когда выбран только один файл?...

Теги:
database
file
image
input

1 ответ

0
            if(isset($_FILES['files'])){
            $errors= array();
             if(count($_FILES['files']['name']) !== 2){
                $errors[]= 'You have to upload two files';
            }
            /**
             * rest of your code
             */
  • 0
    спасибо за ответ ... я хочу, чтобы пользователь мог выбрать файл ввода 2 или только 1. и когда он только решил ввести файл 1, другое поле остается пустым и не вставляется в базу данных. проблема в том, что они выбрали только 1 файл, в базе данных хранят запись 2 файла
  • 0
    Пожалуйста, включите объяснение того, что делает ваш код и как он отвечает на вопрос. Если вы получите фрагмент кода в качестве ответа, вы можете не знать, что с ним делать. Ответ должен дать оператору и будущим посетителям руководство о том, как отладить и исправить их проблему. Указание на то, что лежит в основе вашего кода, очень помогает в понимании проблемы и применении или изменении вашего решения.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню