sanu0074
Новичок
Форма отправки
Скрипт который отправляет файл и интервально запрашивает прогресс:
Сама загрузка файла и функция возвращающая прогресс:
В результате - файл грузится, public function uploadFile() - работает без ошибок. А вот прогресс по таймеру выдает: Undefined index: upload_progress_test_image
Почему так?
в php.ini все настроил:
Код:
<input name="test_image" type="file" onchange="m.uploadFile()" />
<input type="hidden" class="progress" name="<?= ini_get("session.upload_progress.name"); ?>" value="test_image" />
Код:
uploadFile: function(){
var fd = new FormData();
fd.append('test_image', $('input[name="test_image"]')[0].files[0]);
fd.append("PHP_SESSION_UPLOAD_PROGRESS", "test_image");
$(hTolls).html(LOADER);
$.Main.setUploadProgress();
$.ajax({
type: 'POST',
url: HOST+'uploadFile',
data: fd,
processData: false,
contentType: false,
success: function(data) {
alert("загружено"+data);
},
error: function(data) {
alert("сбой"+data);
}
});
},
setUploadProgress: function(){
var t = setInterval(function(){
$.post('getUploadProgress',{"PHP_SESSION_UPLOAD_PROGRESS":"test_image"},function(data){
alert(data);
});
}, 10);
}
Код:
public function uploadFile() {
$uploaddir = 'test/';
$uploadfile = $uploaddir . $_FILES['test_image']['name'];
move_uploaded_file($_FILES['test_image']['tmp_name'], $uploadfile);
print_r($_POST);
}
public function getUploadProgress() {
$key = ini_get("session.upload_progress.prefix").$_POST[ini_get("session.upload_progress.name")];
exit(print_r($_SESSION[$key]));
}
Почему так?
в php.ini все настроил:
Код:
session.upload_progress.enabled = On
;session.upload_progress.cleanup = On
session.upload_progress.prefix = "upload_progress_"
session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS"
;session.upload_progress.freq = "1%"
;session.upload_progress.min_freq = "1"