Картинки jpeg добавляются, а вот архив типа zip нет!
Вот форма с аяксом
<div class="wrapper">
<input type="file" multiple="multiple" >
<a href="#" class="submit button">Загрузить файлы</a>
<div class="ajax-respond"></div>
</div>
<script>
(function($){
var files;
$('input[type=file]').change(function(){
files = this.files;
});
$('.submit.button').click(function( event ){
event.stopPropagation();
event.preventDefault();
var data = new FormData();
$.each( files, function( key, value ){
data.append( key, value );
});
$.ajax({
url: './submit.php?uploadfiles',
type: 'POST',
data: data,
cache: false,
dataType: 'json',
processData: false,
contentType: false,
success: function( respond, textStatus, jqXHR ){
if( typeof respond.error === 'undefined' ){
var files_path = respond.files;
var html = '';
$.each( files_path, function( key, val ){ html += val +'<br>'; } )
$('.ajax-respond').html( html );
}
else{
console.log('ОШИБКИ ОТВЕТА сервера: ' + respond.error );
}
},
error: function( jqXHR, textStatus, errorThrown ){
console.log('ОШИБКИ AJAX запроса: ' + textStatus );
}
});
});
})(jQuery)
</script>
Сервер
$data = array();
if( isset( $_GET['uploadfiles'] ) ){
$error = false;
$files = array();
$uploaddir = './uploads/';
if( ! is_dir( $uploaddir ) ) mkdir( $uploaddir, 0777 );
// переместим файлы из временной директории в указанную
foreach( $_FILES as $file ){
if( move_uploaded_file( $file['tmp_name'], $uploaddir . basename($file['name']) ) ){
$files[] = realpath( $uploaddir . $file['name'] );
}
else{
$error = true;
}
}
$data = $error ? array('error' => 'Ошибка загрузки файлов.') : array('files' => $files );
echo json_encode( $data );
}