PHPスクリプトは:は中止、私は成功し、次のコードをフォルダを圧縮
$('#test').click(function(){
$.ajax({
method:'post',
url:site+'/home/test',
data:{item_name:item_name,ext:ext},
success:function(result){}
});
});
public function test(){
$item_name=$this->input->post('item_name');
$ext=$this->input->post('ext');
shell_exec('cd zip_folder/; zip -r '.$item_name.'.'.$ext.' '. $item_name);
echo '1';
}
しかし、私はフォルダが1ギガバイトのような、非常に大きいという問題があり、それが圧縮する多くを取り、私が作ることができませんスクリプトの終わりまで、より多くの要求。キャンセルボタンを使用してプロセスをキャンセルできる可能性を示したいと思います。私はすでにxhr.abort()を試みたが成功しなかった。 f5を押しても、ジップが完了するまでサイトはロードされたままです。また、このスクリプトをキャンセルするためにf5を押すことが可能かどうかを知りたいと思います。
'data:item_name:item_name、ext:ext}、'はここに入力ミスのようですか? – jmargolisvt
phpの設定でignore_user_abortを確認してください。ユーザーがスクリプトを中断して読み込みを続けると、無視されることがあります。 ignore_user_abort(真)を入れてみてください。 zipメソッドの先頭にある – Brett
はい、ありがとうございますが、コードは正常に動作しています – Darm0ka