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

    Problema con Memory Limit

    Problema: Memory Limit non editabile dal php.ini :|
    Questo non mi permette di far scarikare trammite il comando read_file, file + grandi di 12mb ai miei utenti :| Qualcuno mi sa aiutare? Esiste sicuramente un modo per risolvere la questione (un altro sito web che è hostato sempre da aruba fa scarikare "in streaming" file grandi circa 120mb)!
    Codice PHP:
    <?
    $pagina_default 
    0;
    $id = (isset($_GET['id']))?$_GET['id']:$pagina_default;
     if(!
    is_numeric($id)) {
    $id 1;
    }
     if(
    $id >= 7) { //<-- in questo rigo cambiare "id >= NUM" in base al contenuto dell'array
    $id 0;
    }
    $filename = array(
          
    "file.zip",
          
    "file2.zip"
          
    );
                
    $filename realpath($filename[$id]);

                
    $file_extension strtolower(substr(strrchr($filename,"."),1));

                switch (
    $file_extension) {
                    case 
    "pdf"$ctype="application/pdf"; break;
                    case 
    "exe"$ctype="application/octet-stream"; break;
                    case 
    "zip"$ctype="application/zip"; break;
                    case 
    "doc"$ctype="application/msword"; break;
                    case 
    "xls"$ctype="application/vnd.ms-excel"; break;
                    case 
    "ppt"$ctype="application/vnd.ms-powerpoint"; break;
                    case 
    "gif"$ctype="image/gif"; break;
                    case 
    "png"$ctype="image/png"; break;
                    case 
    "jpe": case "jpeg":
                    case 
    "jpg"$ctype="image/jpg"; break;
                    default: 
    $ctype="application/force-download";
                }

                if (!
    file_exists($filename)) {
                    die(
    "Il file non esiste");
                }
    /*header("Content-Disposition: attachment; filename=\"".basename($filename)."\";");
    header("Content-Type: $ctype");
    header('Content-Transfer-Encoding: binary');
    header("Content-Length: ".filesize($filename));

    readfile_chunked($filename);*/

                
    header("Pragma: public");
                
    header("Expires: 0");
                
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
                
    header("Cache-Control: private",false);
                
    header("Content-Type: $ctype");
                
    header("Content-Disposition: attachment; filename=\"".basename($filename)."\";");
                
    header("Content-Transfer-Encoding: binary");
                
    header("Content-Length: ".filesize($filename));
                
    set_time_limit(0);
                
    set_memory_limit(-1);
                
    //header("Location: ".$filename);
                
    readfile("$filename") or die("File non trovato.");
                
    ?>

  2. #2
    up è urgente please
    Webmaster of Crystal~Memories

  3. #3
    Ho risolto, basta un ini_set();
    Ma mettendo con ini_set il memory_limit a -1 può generare problemi?
    Webmaster of Crystal~Memories

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.