Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    248

    Problema con url pdf che vorrei nascondere

    Ho creato una parte amministrativa che permette di scaricare dei listini prezzo dopo un login con user e pass, tutto funziona a meraviglia solo il fatto che nella pagina dei download ho dei link diretti al file pdf contenuto in una cartella e la cartella non vorrei proteggerla con ulteriore user e pass, ma altrimenti tutti potrebbero accedere. C'è un modo per far si che non si veda l'url del file?
    Grazie, Ale.

  2. #2
    Il metodo standard e':

    - metti i file da "proteggere" in una directory a cui impedisci l'accesso tramite direttive del webserver (.htaccess se apache, boh se roba windows) oppure ancora meglio ma non sempre possibile li metti fuori dalla document root
    - invece di linkare i pdf linki uno script PHP che - dopo aver verificato l'autorizzazione dell'utente - invia il contenuto del file settando header corretti e usando readfile()

    credo tu possa trovare altri messaggi simili, se ne e' parlato decine di volte.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    248
    Grazie, avevo trovato uno script con l'utilizzo della header e readfile() che scaricava in automatico ma poi mi scaricava si il pdf ma corrotto quindi inutilizzabile.
    Cmq cercherò grazie.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    248
    Se puoi darmi una mano te ne sarei grato, allora ho coperto la cartella con .htaccess e .htpasswd.
    La pagina del download reiderizza in self ad una pagina dove ho messo un controllo del login che ho usato per tutta la parte amministrativa quindi è impossibile arrivare alla pagina del download se non loggati. Dopo il controllo in rete ho trovato questo:
    codice:
    header("Content-type: application/pdf");
    // It will be called downloaded.pdf
    header("Content-Disposition:attachment;filename=tortolano_listino_prezzi_15.pdf");
    header("Content-Length: 1187770"); \\ma devo metterlo per forza la dimensione l'ho trovata tramite filezilla
    // The PDF source is in original.pdf
    readfile("listino/tortolano_listino_prezzi_15.pdf");
    come ti dicevo il file me lo scarica ma poi aprendolo con il reader mi dice:

    Adobe Reader non è in grado di aprire il file 'tortolano_listino_prezzi_15.pdf' perchè è un tipo di file non supportato oppure perchè il file è stato danneggiato (ad esempio è stato inviato in allegato ad un messaggio e-mail e non è stato decodificato correttamente,.

    Che cosa sto sbagliando???
    Grazie, Ale.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    248
    TROVATO
    Dovevo aggiungere
    ob_end_clean();
    prima del readfile

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.