Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23

Discussione: Donwload protetti

  1. #1

    Donwload protetti

    Codice PHP:
    if ($Codici==true) {

    $nomefile $row["NomeFile"];
    $path "/dowload";
    $mime "";

    header("Content-type: $mime"); 
    header("Content-Disposition: attachment; filename=$nomefile"); 
    readfile($path);

    echo 
    "<center>[b]Download eseguito correttamente![/b]</center>";

    } else {


    echo 
    "<center>[b]Codici errati!


    <a href=\"javascript:history.back()\">Indietro</a>[/b][/b]</center>"
    ;


    Con questo codice e con un file .htaccess riesco a gestire il download protetto, ma mi da' un solo roblema, scarica il file, ma non scrive Download eseguito correttamente!, rimane fermo alla pagina in cui metto i codici. Come risolvo?
    Grazie

  2. #2
    Ho scoperto anche che i file scaricati risultano danneggiatti

  3. #3
    Beh... per il fatto che i file possano essere danneggiati, non saprei cosa dirti, ma per la tua altra questione il discorso è piuttosto semplice.

    La variabile $path manca del nome del file stesso.

    Ti riscrivo il codice aggiungendo un header che secondo me è una gentile cortesia al tuo utente.

    Codice PHP:
    if ($Codici==true) {

    $nomefile $row['NomeFile']; 
    $path "/dowload".$nomefile
    $mime $row['TipoFile']; // suppongo che al momento dell'upload del file tu abbia salvato nel DB i ltipo

    header("Content-type: $mime"); 
    header("Content-Disposition: attachment; filename=$nomefile"); 
    header("Content-Lenght: ". @filesize($path))
    readfile($path); 

    echo 
    "<center>[b]Download eseguito correttamente![/b]</center>"

    } else { 
    // messaggio di errore
    echo "<center>[b]Codici errati! 

     
    <a href=\"java-script:history.back()\">Indietro</a>[/b][/b]</center>"



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

  4. #4
    Codice PHP:
    if ($Codici==true) {

    $nomefile $row["NomeFile"];
    $path "/dowload/$nomefile";
    $mime "application/zip";

    header("Content-type: $mime"); 
    header("Content-Disposition: attachment; filename=$nomefile"); 
    header("Content-Lenght: ". @filesize($path));
    readfile($path);

    echo 
    "<center>[b]Download eseguito correttamente![/b]</center>";

    } else {


    echo 
    "<center>[b]Codici errati!


    <a href=\"javascript:history.back()\">Indietro</a>[/b][/b]</center>"
    ;


    Stessi problemi

  5. #5
    Sei sicuro che il percorso al file sia quello giusto???
    Prova ad incollare il path (naturalmente risolto, cioè con un nome di file sicuramente presente nella cartella /download) all'indirizzo del tuo sito nel browser e vedi se il download parte oppure no.

    Fai anche attenzione se $nomefile contiene o meno l'estensione del file stesso.
    Debugga scrivendo così:
    Codice PHP:
    // ometto la parte precedente e successiva del codice
    $nomefile $row["NomeFile"]; 
    $path "/dowload/$nomefile";

    echo 
    $path; exit; 
    Ora che scrivo mi sorge anche un altro dubbio: hai fatto un debug della parte prcedente dello script? Sei sicuro che l'errore non sia prima???

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

  6. #6
    Il nome del file è giusto, anche il codice prima.

  7. #7
    Sei in remoto oppure in locale???
    Se sei in remoto, allora prova a mettere il percorso assoluto fisico della cartella.

    Qualcosa tipo:
    Codice PHP:
    $path "X:/httpdocs/nome_sito_tld/download" 
    Il tuo hoster dovrebbe avertelo segnalato.

    Poi... la echo delle due righe che ti ho scritto prima cosa riporta??

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

  8. #8
    Sono in remoto su Seeweb, il percorso dovrebbe essere /htdocs/dir, l'echo non esce, si ferma alla pagina precedente.

  9. #9
    Mi correggo, il percorso è /home/mhd/www.sito.it/htdocs/dir, ma stessi problemi.

  10. #10
    l'echo non esce, si ferma alla pagina precedente.
    Scusami, ma cosa intendi???

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

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 © 2024 vBulletin Solutions, Inc. All rights reserved.