Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Download file di grosse dimensioni

    Ciao,
    ho un problema. Ho una procedura che si deve occupare di scaricare file di grosse dimensioni. I file su disco sono salvati senza alcuna estensione, utilizzando il loro id.
    La procedura fa una cosa del genere:
    Codice PHP:
    header("Content-Type: ".$file->file_type); 
    header("Content-Disposition: attachment; filename=".$file_name);
    header("Content-Length: ".filesize($_GET['fileID']));
    header("Content-Transfer-Encoding: binary");

    // Invia il file al browser
    function readfile_chunked ($filename) {
      
    $chunksize 1024// how many bytes per chunk
      
    $buffer '';
      
    $handle fopen($filename'rb');
      if (
    $handle === false) {
       return 
    false;
      }
      while (!
    feof($handle)) {
       
    $buffer fread($handle$chunksize);
       print 
    $buffer;
      }
      return 
    fclose($handle);
    }     
    readfile_chunked($_GET['fileID']); 
    A volte funziona e a volte sembra bloccarsi il download ad un certo punto. Ho anche notato che facendo il download diretto al file le velocità di download sono decisamente maggiori che non mandandolo via php.
    Sapete suggerirmi quale sia il metodo migliore e a cosa possano essere dovuti i problemi?
    Il tutto gira su di un mio server con IIS6 e PHP 5.
    http://www.beavermag.it

  2. #2
    up
    http://www.beavermag.it

  3. #3
    Prova questo:

    set_time_limit

    Posso dirti che avevo lo stesso problema, le ho provate tutte;
    soluzioni ottimali: nessuna.
    Se avessi voluto risolvere i problemi con la forza, sarei nato Jedi.

  4. #4
    vedi se puo' tornarti utile, a me non ha mai dato problemi
    http://www.devpro.it/php4_id_72.html
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    alla fine è molto simile al mio. Un'altro problema cmq è che io praticamente dal mio sito lancio un link alla pagina download.php che mi fa partire il download ma fino a quando non lo ho completo o lo blocco non riesco più a navigare nel sito. Esiste qualche modo per far partire un file come se lo linkassi direttamente ma in realtà vado a prendere un file su disco e te lo ripropongo con un altro nome?
    Insomma vorrei evitare di far leggere a php il file ma creare un normale download.
    Spero di essermi spiegato.
    http://www.beavermag.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.