• 22-12-2012, 08:47:15
    #1
    şöyle bir kodum var bu kodla kullanıcıya dosya indirtiyorum.burada sorun şu indirme başladığında kullanıcı sitenin başka hiçbir sayfasında gezemiyor. indirme bittikten sonra gezebiliyor. şöylede bir durum var mesela chromeden indirmeye başladı kullanıcı explorerda siteyi acıp gezebiliyor.


    $file="http://uzaksunucu.com/dosya.zip";
    $type = "application/force-download";
    $uz=pathinfo($file);
    $header_file = (strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE')) ? preg_replace('/\./', '%2e', $file, substr_count($file, '.') - 1) : $file;

    // Prepare headers

    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header('Content-Disposition: attachment; filename='.basename($request[1].'-'.dwdecode(urldecode($request[4])).'.'.$uz['extension']));
    header("Cache-Control: public", false);
    header("Content-Description: File Transfer");
    header("Content-Type:" . $type);
    header("Accept-Ranges: bytes");
    header("Content-Transfer-Encoding: binary");
    header('Content-Length: ' . $file_size);
    header("Content-Type: application/force-download; name=".$file);

    // Send file for download

    if ($stream = fopen($file, 'r')){
    while(!feof($stream) && connection_status() == 0){

    //reset time limit for big files

    set_time_limit(0);
    print(fread($stream,$file_size));

    flush();
    }
    fclose($stream);
    }
  • 22-12-2012, 09:41:38
    #2
    Üyeliği durduruldu
    ip kontrolü ile halledebilirsin..
  • 22-12-2012, 12:01:43
    #3
    burda benim yapmak istediğim aslında kullanıcıyı engellemek değil. kullanıcıların istediği kadar indirmesini istiyorum. ama bir dosya indirmeye basladımı baska hiçbir sayfada gezemiyor kullanıcılar. aynı anda 2,3 dosya indirsinler istiyorum ama bu kodla mümkün görünmüyor. bu kodun birçok çeşidini de denedim aynı sorun var.
  • 22-12-2012, 12:55:11
    #4
    dosyanın indirildiği dosyada timeout için kod kullanılıyordur.

    ini_set('max_execution_time', 0); ya da set_time_limit(0); gibi.
  • 22-12-2012, 14:26:00
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
    kirphi adlı üyeden alıntı: mesajı görüntüle
    burda benim yapmak istediğim aslında kullanıcıyı engellemek değil. kullanıcıların istediği kadar indirmesini istiyorum. ama bir dosya indirmeye basladımı baska hiçbir sayfada gezemiyor kullanıcılar. aynı anda 2,3 dosya indirsinler istiyorum ama bu kodla mümkün görünmüyor. bu kodun birçok çeşidini de denedim aynı sorun var.

    Bunu kaldırırsan istediğin gibi çalışma olasılığı yüksek olur gibi . && connection_status() == 0
  • 23-12-2012, 03:53:33
    #6
    sorunu buldum arkdaslar sayfaların en ustunde session_start() olan hiçbir sayfayı gezemiyor kullanıcı. kaldırdım düzeldi