masoum
October 28th, 2014, 11:07
سلام. برنامه ای نوشتم که با استفاده از دستور zip-7 یک فایل رو که مسیر بهش دادم زیپ کنه و با دستورات header دانلود کنه. کد هیچ مشکلی نداره و کاملا درست فایل رو زیپ میکنه و میاره برای دانلود. این کدش:
$path2 = '...';
shell_exec("7z a -tzip $path2/myzip.zip $path2");
$file = $path2 . '/myzip.zip';
header("Pragma: public");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-type: application/zip");
header('Content-disposition: attachment; filename='.basename($file));
header("Content-Transfer-Encoding: binary");
readfile($file);
فقط تنها مشکلش اینه که خیییییییییییلیییییییییییی ی طول میکشه تا اینکارو انجام بده. البته فایل رو سریع زیپ میکنه (ظرف چند ثانیه)، ولی تا بیاد پنجره save رو باز کنه که فایل رو دانلود کنم خیلی طولش میده (حدود چند دقیقه !!!). لطفا راهنمائیم کنید مشکلش کجاست. ممنون
$path2 = '...';
shell_exec("7z a -tzip $path2/myzip.zip $path2");
$file = $path2 . '/myzip.zip';
header("Pragma: public");
header("Expires: 0");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-type: application/zip");
header('Content-disposition: attachment; filename='.basename($file));
header("Content-Transfer-Encoding: binary");
readfile($file);
فقط تنها مشکلش اینه که خیییییییییییلیییییییییییی ی طول میکشه تا اینکارو انجام بده. البته فایل رو سریع زیپ میکنه (ظرف چند ثانیه)، ولی تا بیاد پنجره save رو باز کنه که فایل رو دانلود کنم خیلی طولش میده (حدود چند دقیقه !!!). لطفا راهنمائیم کنید مشکلش کجاست. ممنون