Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di dvd810
    Registrato dal
    Mar 2009
    Messaggi
    157

    Echo del codice html con variabili valorizzate

    Salve a tutti.

    realizzato il template con variabili php, vorrei avere la possibilità di stampare a video una parte del codice con le variabili valorizzate, come verrebbe visualizzato cliccando tasto destro-->visualizza sorgente pagina.

    Come posso fare?
    Grazie

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,469
    Non sono sicuro di aver capito, puoi fare un esempio pratico di ciò che vorresti apparisse?

  3. #3
    Utente di HTML.it L'avatar di dvd810
    Registrato dal
    Mar 2009
    Messaggi
    157
    visualizzare l'html generato dalla pagina dinamica, esattamente come viene visualizzato il codice sorgente

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Guarda le funzioni ob_start() e affini.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Utente di HTML.it L'avatar di dvd810
    Registrato dal
    Mar 2009
    Messaggi
    157
    Scopiazzando qua e la ho trovato questa soluzione:

    codice:
    <?php
    function callback($buffer) {
      return (htmlspecialchars($buffer) . "
    \n");
    }
    ob_start('callback');
    ?>
    html .... html
    
    <?php
    ob_end_flush();
    ?>
    Effettivamente ottengo lo scopo desiderato, ossia stampo a video il codice della pagina, con il Php valorizzato (non vedo il codice Php ma l'html restituito).
    Ultima cosa da fare, è riuscire a mantenere l'indentazione del codice, che al contrario risulta tutto slla stessa linea.

    Suggerimenti?
    Grazie.

  6. #6
    Quote Originariamente inviata da dvd810 Visualizza il messaggio
    Salve a tutti.

    realizzato il template con variabili php, vorrei avere la possibilità di stampare a video una parte del codice con le variabili valorizzate, come verrebbe visualizzato cliccando tasto destro-->visualizza sorgente pagina.

    Come posso fare?
    Grazie
    Se vuoi vedere a video l'html devi sostituire tutti i "<" con "&lt;" e tutti i ">" con "&gt;"
    Di modo che l'html non venga interpretato dal browser ma mostrato come testo.

    esempio:
    codice:
    <p> contenuto del paragrafo </p>
    diventa
    codice:
    &lt;p&gt; contenuto del paragrafo &lt;/p&gt;
    edit: non avevo visto la soluzione accettata....

  7. #7
    Utente di HTML.it L'avatar di dvd810
    Registrato dal
    Mar 2009
    Messaggi
    157
    grazie, ogni suggerimento è ben accetto, solo che la tua soluzione mi sembra un po' macchinosa, anche perchè nel mio caso si tratta di 1.100 righe di codice, ritengo in questo caso la funzione ob_start() maggiormente indicata.
    Devo solo trovare il modo di mantenere l'indentazione del codice.

  8. #8
    Quote Originariamente inviata da dvd810 Visualizza il messaggio
    Ultima cosa da fare, è riuscire a mantenere l'indentazione del codice, che al contrario risulta tutto slla stessa linea.

    Suggerimenti?
    Grazie.
    Potresti provare con un replace degli spazi con un &nbsp; e un replace delle tabulazioni con tre o quattro "&nbsp;"

  9. #9
    Quote Originariamente inviata da dvd810 Visualizza il messaggio
    grazie, ogni suggerimento è ben accetto, solo che la tua soluzione mi sembra un po' macchinosa, anche perchè nel mio caso si tratta di 1.100 righe di codice, ritengo in questo caso la funzione ob_start() maggiormente indicata.
    Devo solo trovare il modo di mantenere l'indentazione del codice.
    Se non erro htmlspecialchars() esegue esattamente il replace che ti ho indicato, più la trasformazione in entità di tutti i caratteri "non standard"

  10. #10
    Codice PHP:
    function callback($buffer) {
      return (
    htmlspecialchars(str_replace(" ","&nbsp;",str_replace("\t","&nbsp;&nbsp;&nbsp;",$buffer))) . "
    \n"
    );

    Dove "\t" sono le tabulazioni;

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.