Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    20

    Problema spaziatura con PHP incluso in XHTML

    Sono un novizio di XHTML+PHP e facendo una pagina .php ospitata su di un server web sto avendo un problemino con la spaziatura risultante nel file .html una volta che lo visualizzo col browser web.

    Questo è il codice incriminato nel mio file .php (lato server):

    codice:
    [..]
    <body>
      <div id="container">
        <?php
          top();
        ?>
        
        <div id="navigation">
    [..]
    Come noterete, indento con una spaziatura di 2 caratteri (ho impostato l'editor perchè mi rimpiazzi le tabulazioni con spazi).

    Questo è il file che includo (con l'istruzione include_once("./include/top_foot.inc.php");) nella pagina PHP e che contiene la funzione top():

    codice:
    <?php
      function top() { ?>
        <?php
          echo "<div id=\"header\"><a href=\"main.php\" id=\"top_header\" name=\"top_header\">XXXXX YYY prj</a></div>"
        ?>
    
      <?	}
    
    
    [..]

    Questo è il risultato (la page source) che ottengo visualizzando con Firefox la pagina PHP che sta sul server:

    codice:
    [..]
      <body>
      <div id="container">
            <div id="header">XXXXX YYY prj</div>
          
        <div id="navigation">
    [..]

    Come posso far si che la riga "<div id="header"><a ......." (che è prodotta con PHP con la mia funzione top() ) non venga spaziata in quel modo ma sia alla stessa colonna della riga seguente "<div id="navigation">"?

    Vorrei insomma un'output di questo tipo:

    codice:
    [..]
      <body>
      <div id="container">
        <div id="header">XXXXX YYY prj</div>
          
        <div id="navigation">
    [..]


    Per finire un'ultima domanda: come mai, nel file che includo, l'istruzione "echo" non è terminata con ";"? La funzione non l'ho scritta partendo da 0 ma da una guida di HTML.it, per questo contiene questo particolare che non conosco, non l'ho ideato io.


    grazie per l'aiuto!

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    570
    l'ultimo echo non è chiuso da ; per il fatto che l'ultima riga di codice può non averlo, ma è buona usanza farlo a priori, visto che poi se aggiungi altri righe possono succedere casini (vedi anche con include vari)

    il codice dove c'è la funzione è un abominio comunque, non ha senso chiudere e riaprire ad ogni riga il tag di php

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    20
    Corretto così:


    codice:
    <?php
      function top() {
        echo '<div id="header">Forum db1 prj</div>';
      }
    
    
      function foot() {
        echo '<div id="footer"><div class="line"><hr /></div>[img]./imag/valid-xhtml10-blue.png[/img][img]./imag/valid-css2-blue.png[/img]</div>';
      }
    ?>

    Non so perchè fosse stato scritto così. Mi sono basato su delle guide e l'ho scritto 4 anni fa, ora l'ho dovuto riprendere dopo tanto tempo ed anche a me sembrava molto strano quell'aprire e chiudere tag, questo anche non avendo esperienza col PHP.


    Ora anche il problema della spaziatura è risolto. Grazie.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    570
    puoi eliminare tutti quei tag di apertura e chiusura tranne il primo e l'ultimo

    onestamente non capisco perchè ti interessi l'aspetto del sorgente

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    20
    Ho modificato il messaggio precedente poichè sono riuscito a risolvere pochi minuti prima che tu mi rispondessi (ora comunque ho visto la risposta, grazie!).

    Il codice pensavo fosse buona norma avercelo indentato bene, sempre. Per questo mi è venuto naturale almeno **provare** ad ottenere una corretta indentazione.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    570
    il codice è importante che indentato correttamente sull'ide, non in stampa.

    molti mettono online addirittura versioni minified (ovvero senza spazi e a capo) per far pesare meno il file e renderlo più veloce da inviare e ricevere.

    se una persona vuole leggere realmente il tuo sorgente per fare qualcosa di più di dargli una rapida occhiata lo apre con firebug o addon simili, che in automatico sistema l'indentatura.

    ti stai davvero preoccupando per una cosa assolutamente inutile :P

    io personalmente in quasi 7 anni non credo di aver mai dato un occhiata per vedere che aspetto ha il mio codice sorgente.
    ci sono molte altre cose molto più importanti, come ad esempio eliminare aperture e chiusure inutili dei tag

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.