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

    Problema con download.php

    Ho un sito web di commercio elettronico, per realizzarlo è stato utilizzato il pacchetto oscommece.

    Ora vorrei consentire ai miei clienti di effettuare il download di un catalogo in PDF e pensavo di usare il modulo precaricato download.php

    Da quello che ho capito a questo punto mi basterebbe copiare il file che desidero nella cartella download e creare un pulsante con questo link associato

    http://www.miosito.it/download.php?file=test.pdf

    e teoricamente dovrebbe partire il download del file... in realta si apre una pagina download.php

    Dove sbaglio?

    Grazie!

  2. #2
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    esiste il file test.pdf?
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  3. #3
    si, sono imbranato ma non fino a questo punto...

  4. #4
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da bean_bandit
    si, sono imbranato ma non fino a questo punto...
    senza offesa, eh. Si tentano tutte.
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  5. #5
    no tranquillo, alla fine le cose piu stupide sono quelle che spesso e volentieri si commettono!

  6. #6
    Sarebbe il caso di dare un occhiata al codice della pagina di donwload.

    Potresti postarlo?
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  7. #7
    per fortuna ho risolto il problema (almeno per ora) adesso devo vedere se riesco a scaricare file abbastanza grandi

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    154
    Come l'hai risolto?

  9. #9
    non avevo capito che nel link che mettevo

    http://www.miosito.it/download.php?file=test.pdf

    "file" era il nome della variabile, credevo fosse un comando standard...

    A chi puo essere utile posto il codice che ho usato:

    Codice PHP:
    <?php

    $filename 
    $_GET['file'];

    // required for IE, otherwise Content-disposition is ignored
    if(ini_get('zlib.output_compression'))
    ini_set('zlib.output_compression''Off');

    // addition by Jorg Weske
    $file_extension strtolower(substr(strrchr($filename,"."),1));

    if( 
    $filename == "" )
    {
    echo 
    "ERROR: download file NOT SPECIFIED. USE force-download.php?file=filepath";
    exit;
    } elseif ( ! 
    file_exists$filename ) )
    {
    echo 
    "ERROR: File not found. USE force-download.php?file=filepath";
    exit;
    };
    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 
    "jpeg":
    case 
    "jpg"$ctype="image/jpg"; break;
    default: 
    $ctype="application/force-download";
    }
    header("Pragma: public"); // required
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private",false); // required for certain browsers
    header("Content-Type: $ctype");
    // change, added quotes to allow spaces in filenames, by Rajkumar Singh
    header("Content-Disposition: attachment; filename=\"".basename($filename)."\";" );
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".filesize($filename));
    readfile("$filename");
    exit();
    ?>
    Il codice va bene cosi e non va toccato nulla. Ho salvato il codice con il nome forceDownload.php

    Creare un collegamento con questa sintassi:

    http://www.miosito.it/forceDownload....ile.estensione

    Percorso= ha gia in memoria il percorso fino a dove copi il file .php per cui se il file da scaricare si trova in httpdocs/download ed hai copiato il file forceDownload.php in /httpdocs basta scrivere

    http://www.miosito.it/forceDownload....ile.estensione

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.