نمایش نتایج 1 تا 5 از 5

نام تاپیک: ارسال فایلهای فشرده بر روی کلاینت

  1. #1

    ارسال فایلهای فشرده بر روی کلاینت

    با سلام
    با کمک کدهای زیر یک فایل فشرده شده (zip) رو میخواهم روی سیستم کلاینت ارسال نمایم. بعد از ارسال وقتی که روی فایل دریافت شده کلیک میشود سیستم عامل پیام (ویندوز نمیتواند این پوشه را باز کند) مشاهده میشود. در صورت نبود زحمت کد رو اصلاح بفرمایید.
    با تشکر


    $zipname='ziped.zip';
    header("Pragma: public");
    header("Expires: 20");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private",false);
    header("Content-Type: application/force-download");
    header("Content-Disposition: attachment; filename=".$zipname);
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".filesize($zipname));
    readfile("$zipname");

  2. #2
    کاربر تازه وارد
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    اصفهان - پلاک 136
    پست
    47

    نقل قول: ارسال فایلهای فشرده بر روی کلاینت

    مشکلی اینجا نیست .. آیا
    1- فایل زیپ شما درسته ؟
    2-روی سرور درستش میکتی ؟
    3- مشکل که از خطت نیست ؟

  3. #3

    نقل قول: ارسال فایلهای فشرده بر روی کلاینت

    نقل قول نوشته شده توسط love4php مشاهده تاپیک
    مشکلی اینجا نیست .. آیا
    1- فایل زیپ شما درسته ؟
    2-روی سرور درستش میکتی ؟
    3- مشکل که از خطت نیست ؟
    با سلام
    فایل زیپ درسته چون بطور معمول روی سرور باز میشه بدون مشکل.
    بله برای ذخیره در پروفایل کاربر روی سرور ذخیره میشه.

    ولی هنوز مشکل بقوت خودش باقی و بنده هم بشدت معطل این قضیه ام.
    با تشکر

  4. #4

    نقل قول: ارسال فایلهای فشرده بر روی کلاینت

    بنده خیلی وقت کدی جهت بک آپ گیری از کل محتویات دیتابیس داشتم که بعد از فراخوانی کلیه محتویات جداول بصورت دستورات sql تحت یک فایل آن را فشرده کرده و به تاریخ جاری آن را دان لود می نمود.

    که کد مربوط به فشرده سازی و دان لود آن را در ذیل قرار دادم .

    این کد فایل موردنظر (که البته می تواند شامل فایلها نیز باشد) را فشرده کرده و سپس دانلود می کند.


    ob_start();
    $file = 'table.txt';
    $newfile = basename($file);
    $ExtDn = pathinfo($newfile);
    $ExtDn = $ExtDn["extension"];
    $zipnamefile = substr($file,0, strlen($file)-strlen($ExtDn)) . 'zip';
    require_once('zip.php');
    $archive = new PclZip($zipnamefile);
    if ($archive->create($file) == 0) {
    die('Error : '.$archive->errorInfo(true)); }
    $file = $zipnamefile;
    $file = 'Location: http://www.'.$SERVER_NAME.'/'.$zipnamefile;
    Header($file);
    در کد فوق بنده از همان کلاس معروف pclzip فایل موردنظر را زیپ کرده و نام فایل پیش فرض آن table.txt می باشد که شما می توانید نام آن را پارامتریک ارسال نمایید.
    و حتی جهت فراخوانی از مسیرهای مختلف (مسیر آن را ) نیز بصورت پارامتریک به کد فوق ارسال نمایید.
    جهت اطمینان بیشتر فایل zip.php را بنده مجددا آپلود نمودم.
    فایل های ضمیمه فایل های ضمیمه
    • نوع فایل: zip zip.zip‏ (28.7 کیلوبایت, 10 دیدار)

  5. #5

    نقل قول: ارسال فایلهای فشرده بر روی کلاینت

    کد مربوط به پشتیبان گیری جداول دیتابیس و دان لود آن:

    include('date.php');
    $date = m2sh(date(Y), date(m), date(d), 2);
    $ddate = $date[0] .'-' . $date[1] .'-' . $date[2];
    header("Content-type: text/plain");
    header('Content-type: application/text');
    header('Content-Disposition: inline; filename= data'.$ddate .'.txt');
    $num_table =0;
    $counter = 0;
    include('connect.php');
    $local_query = 'SHOW TABLES FROM '. $db_name;
    $result = mysql_query($local_query);
    if ($result != FALSE && mysql_num_rows($result) > 0) {
    $tables = array();
    while ($tmp = mysql_fetch_row($result)) {
    $tables[$num_table] = $tmp[0];
    $num_table++;
    }
    }
    mysql_free_result($result);
    if ($num_table == 0) {
    echo 'no any table in database';
    exit;
    }
    for ($iz=0;$iz<$num_table;$iz++) {
    $table = $tables[$iz];
    echo "truncate `$table`\n";
    $query=mysql_query("select * from `$table`");
    while ($row=mysql_fetch_row($query)):
    $flag='';
    $flist="insert into `$table` values (";
    foreach ($row as $andis => $value){
    $value=addslashes($value);
    $value=ereg_replace("\r\n","<br>",$value);
    $value=ereg_replace("\r","",$value);
    $flist=$flist.$flag.'"'.$value.'"';
    $flag=' , ';
    }
    $flist.=')';
    $flist=mysql_escape_string ($flist);
    $flist=ereg_replace('\(/\"' , '("' , $flist);
    $flist=stripslashes($flist);
    echo $flist."\n";
    $counter++;
    endwhile;
    }
    mysql_close($connect);


    و باز جهت راحتی دوستان فایل data.php (که مربوط به تبدیل تاریخ میلادی به شمسی هست) را مجددا اینجا آپلود می کنم.

    والبته با ترکیب این دو کد (وقابلیتهای کلاس pclzip) شما می توانید این فایل را نیز بصورت فشرده دان لود نمایید.
    فایل های ضمیمه فایل های ضمیمه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •