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

    esportare una pagina html

    Ciao a tutti.
    Ho un problema e volevo sapere se qualcuno sa come risolverlo. Ho una pagina .php e voglio realizzare un bottone che mi permette di esportarla in formato html in modo che un utente che visita la pagina possa salvarsela sul proprio computer. chiaramente non sarà sufficiente avere il codice html(che comunqua non so come ottenere) ma anche tutte le immagini che usa la pagina e gli eventuali fogli di stile.
    In pratica il bottone dovrebbe emulare quello che fa il menu di tutti i browser
    file->salva pagina come

    Qualcuno può aiutarmi???
    grazie in anticipo

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non si puo'... solo l'utente puo' decidere se e come salvarla e a questo scopo ha a disposizione i comandi del suo browser.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    grazie della risposta.
    Ho visto in giro dei javascript che permettono di aprire il menu del browser come tu dici pero funzionano solo con explorer e non mi vanno bene.

    Con javascript si puo eventualmente ottenere il sorgente della pagina. a mali estremi dopo aver ottenuto il sorgente me lo salvo in un file .html lo metto in una cartella insieme a tutto il necessario e dovrei ottenere lo stesso risultato che avrei dal menu del browser...

    oppure qualcuno ha qualche idea migliore???

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    E' più facile ottenere quello che vuoi con PHP che tramite javascript. Penso che comunque ci sia da lavorare di socket, espressioni regolari e possibilmente di zlib visto che non potrai creare la classica cartella sul client, ma solo mandargli in download un pacchetto unico contenente quel che meglio credi (per questo lo zip, con tutti i file necessari).
    Saluti
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    si hai ragione devo sicuramente zippare il tutto una volta organizzato.
    Ti spirgo meglio il problema io lavoro in php e ho ovviamente una pagina dinamica che vorrei poter far esportare all'utente nel momento in cui lui ritiene giusto.
    Per farlo con php ho pensato si potrebbe creare un file di testo nel quale metto tutto il codice html piu tutti gli echo che faccio pero questo porterebbe a stravolgere il codice e sarebbe comunque assolutamente non portabile ho pensato a javascript in quanto essendo lato client supponevo ci fosse qualcosa di semplice per analizzare la pagina sorgente compreso e ancora meglio se si poteva pure salvarla però non so davvero come fare.
    Mi sembra strano comunqua che anche in giro non ho trovato nulla in fondo dovrebbe essere una richiesta abbastanza comune e non credo di essere l'unico incappato in questo problema.

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non sei l'unico e non hai trovato nulla per il semplice motivo che in javascript non si puo' fare.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    24
    Ciao

    Con javascript volendo potresti leggere il codice sorgente della pagina (che immagino crei dinamicamente di volta in volta con php).

    Una volta letto il sorgente lo puoi inserire dentro un textarea di un form nascosto e inviare tutto ad uno script lato server che scriva il file html partendo da quel sorgente e ti crei il file *.zip con le immagini ecc.

    Ti posto un esempio di js per leggere il sorgente della pagina ed inserilo in un form. Sono su linux ed ho testato solo con Opera e Konqueror e funziona.

    In head metti questo:

    codice:
    <script type="text/javascript">
    <!--
    function sorgente_pag(){
    document.form1.sorgente.value=document.documentElement.innerHTML;
    document.form1.sorgente.submit;
    return false;
    }
    //-->
    </script>
    e nella pagina questo form:

    codice:
    <form action="crea_pag.php" method="post" name="form1"  onsubmit="return sorgente_pag()">
    	<textarea  style="height : 1px; width : 1px;" name="sorgente"></textarea>
    		<input type="submit" value="salva pagina" />
    </form>

    In pratica nella pagina vedrai il pulsante per l'invio del form, all'invio parte il js che si occupa di leggere il sorgente della pagina e lo inserisce nel textarea e dopo invia tutto al server dove dovrai creare con php uno script per creare la pagini il file zip ecc. Ricordati che nel codice inviato sarà presente anche quello del form e del javascript presente in head, quindi dovrai creare una funzione (tipo replace) che li cancelli questi codici

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Originariamente inviato da superst3
    si hai ragione devo sicuramente zippare il tutto una volta organizzato.
    Ti spirgo meglio il problema io lavoro in php e ho ovviamente una pagina dinamica che vorrei poter far esportare all'utente nel momento in cui lui ritiene giusto.
    Per farlo con php ho pensato si potrebbe creare un file di testo nel quale metto tutto il codice html piu tutti gli echo che faccio pero questo porterebbe a stravolgere il codice e sarebbe comunque assolutamente non portabile ho pensato a javascript in quanto essendo lato client supponevo ci fosse qualcosa di semplice per analizzare la pagina sorgente compreso e ancora meglio se si poteva pure salvarla però non so davvero come fare.
    Mi sembra strano comunqua che anche in giro non ho trovato nulla in fondo dovrebbe essere una richiesta abbastanza comune e non credo di essere l'unico incappato in questo problema.
    Con i socket puoi far credere al server da cui richiedi la pagina di essere un browser di un utente umano. La seccatura più grossa è fare il parsing di tutte le menate "esterne" tipo immagini, js, css e immagini contenute nei css e sostituire i percorsi con qualcosa del tipo files/nomefile.jpg e nella pagina idem (si fa con le espressioni regolari). Direi che Javascript è proprio l'elemento meno adatto (anzi, non ti aiuta proprio) in questo caso.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.