Для создания файла .zip
я отправляю ответ обратно в ajax.
Мой php
// Multiple download (checkboxes)
if(isset($_POST["checkboxes_down"])) {
// create a tmp folder for the zip file
$tmpfolder = $MainFolderName.'/tmpzip';
if (!is_dir($tmpfolder)) {
mkdir($tmpfolder, 0755, true);
}
$checkboxfiles = explode("," , $_POST["checkboxes_down"]);
$filename = "archive.zip";
$filepath = $tmpfolder."/";
foreach($checkboxfiles as $checkboxfile) {
Zip($checkboxfile, $tmpfolder."/archive.zip");
}
// send the path to file back as response
echo $filepath.$filename;
unlink($tmpfolder.'/archive.zip'); // unlink archive.zip
rmdir($tmpfolder); // remove tmpdir
exit;
}
Мой jquery ajax:
$.ajax({
url:"",
method:"POST",
data:{ checkboxes_down:checkboxes_down },
success:function(response){
window.location = response; // redirec to .zip file for download
}
Iнадеялся, что ответ и перенаправление были быстрее, чем отсоединение от tmpfolder.Но, к сожалению, я не могу использовать unlink
так, как я создал его в файле php.
Так, как я могу отсоединить tmpfolder
после того, как ответ успешен и перенаправлен? Должен ли я использовать что-то в качестве задержки перед отсоединением?