النتائج 1 إلى 3 من 3

الموضوع: استفسار بخصوص نظام إستكمال تحميل تكفون حط زبدتكم هنا (*_*)

  1. #1
    عضو جديد
    تاريخ التسجيل
    Jul 2008
    المشاركات
    10

    Smile استفسار بخصوص نظام إستكمال تحميل تكفون حط زبدتكم هنا (*_*)



    هل استكمال التحميل نظام خاص له برمجة و طريقة خاصة ؟؟


    المبرمج عندي مو عارف كيف يسوي الاستكمال للتحميل

    ابغى من الاخوان يوضحون لي ما هيت هذا النظام ؟

    و شكرا







  2. #2
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    789


    اخي دع المبرمج يتابع هذى الصفحه

    PHP: fread - Manual

    يوجد الحل فيها





    __________________
    متى استعبدتم الناس وقد ولدتهم أمهاتهم أحرار........
    -----------------------------------
    شبكة الشعر الادبيه

  3. #3
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    لعمل هذه الميزة يجب ان تفهم كيف يعمل إكمال التنزيل (resume) ... عندما يتصل شخص بالخادوم ويحاول ان ينزل ملف ما فانه يرسل له رسالة في الرأس يمكن ان تفعل ذلك باستخدام الداله header وعند انقطاء الاتصال ومعاودة التنزيل مره اخرى يرسل العميل ان يريد بقية الملف ولا يريده من البدايه فتقوم انت بارسال بقية الملف وتحدد ذلك من خلال الداله header.

    الخطوتين التالية في حالة طلب الملف لاول مره:
    - اولا قبل طباعة الملف ارسل الكود الذي يبينانك تدعم اكمال التنزيل.
    كود PHP:
    header("Accept-Ranges: bytes"); 
    - ارسل حجم الملف بالبايت حتى يتمكن العميل من معرفة ذلك .
    كود PHP:
    header("Content-Length: 1024");//فرضا 1024 بايت 
    في حالة طلب الملف مره اخرى(أي يريد إكمال تنزيل الملف): يمكن معرفة ذلك من خلال الداله getallheaders والتى ستعيد لك بينات الطلب المرسل أو من خلال المصفوفه $_SERVER.
    - في حال وجود Range في الطلب سوف نعرف انه يطلب محتوى محدد من الملف سوف نحصل على قيمتة ثم نرسل له المحتوى الذي يريده .
    هذا مثال مكتمل يحتاج الى مراجعة كاملة
    كود PHP:
    <?php
    $fn 
    'myfile.dat';
    $size filesize($fn);
    $header getallheaders();
    $fp fopen($fn,'r');
    if(
    $headers['Range']){
        
    header('HTTP/1.0 206 Partial Content');
        list(
    $start$end) = explode('-',str_replace('bytes=','',$headers['Range']));
        
    header ('Content-Range: bytes '.$start.'-'.$end.'/'.$size);
        
    header ('Content-Length: '.($start-$end));
        
    fseek($fp$start);
    }else {
        
    header("Accept-Ranges: bytes");
        
    header("Content-Length: ".$size);
    }
    while (!
    feof($fp)) {
        echo 
    fread($fp1024);
    }
    fclose($fp);
    ?>
    مراجع
    All news about PHP
    HTTP/1.1: Header Field Definitions
    PHP: getallheaders - Manual





    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض