Visualizzazione dei risultati da 1 a 9 su 9

Discussione: div inclusi

  1. #1

    div inclusi

    Ciao a tutti, ho un sito la cui struttura è difinita interamente con css esterni..in tutte le pagine del sito ci sono dei div che si ripetono..so che con php usando la funzione include() si possono includere i div senza doverli scrivere di volta in volta, velocizzando cosi l'aggiornamento...le mie domande sono:
    - la pagina dev'essere una pagine .php? perchè dovrei cambiare tutte le pagine del sito
    - devo usare include() nel punto preciso o posso inserirle all'inizio tanto se ne occupa il css?
    - se ho supponiamo 3 div, devo realizzare 3 file html separati giusto?
    - qualcuno può farmi un esempio di inclusione di un singolo div?
    ho effettuato ricerche ma ho trovato cose molto caotiche!
    grazie mille a tutti!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    dunque: se vuoi utilizzare in un pagina caratteristiche php, quella pagina DEVE essere in php. Se quindi hai una pagina HTML in cui a un certo punto è presente un DIV e vuoi estrapolarlo (nel senso di salvare questo blocco come "HTML" esterno e nella pagina principale mettere un "include") devi "convertirla" in php (che poi vuol dire inserire il codice che ti serve e - solitamente - semplicemente rinominarla in "php"). Tieni conto che se hai accesso alle configurazioni del server puoi anche impostarlo in maniera che elabori i file ".html" come "php" senza doverli neanche rinominare: questo può essere utile se hai già molti link che puntano a tali pagine. Un'altra possibilità per semplificare la riscrittura - ma sempre configurando il server - è creare dei doppioni (es.: home.html e home.php) e creare delle regole di riscrittura permanenti, in modo che tutte le chiamate a home.html vengano automaticamente spostate su home.php.

    Se hai una struttura tipo:

    Codice PHP:
    <div>
      
    Questo è il DIV principale
      
    <div>
        
    Questo è un div secondario che vogliamo "spostare" esternamente perchè usato in molte pagine
      
    </div>
    </
    div
    devi salvare il DIV da spostare in un file, p.es. "div.html" e modificare il codice sopra con:

    Codice PHP:
    <div>
      Questo è il DIV principale
    <?php include('div.html'); ?>
    </div>
    l'istruzione INCLUDE del php legge il file esterno e lo "mette" nel punto in cui è l'istruzione stessa: non puoi quindi mettere l'INCLUDE in cima al codice (o meglio: potresti, ma dovresti usare istruzioni differenti e poi comunque inserire un blocco PHP nel punto di inserimento, altrimenti come farebbe il sistema a sapere dove inserire il file esterno?)

    Questa cosa la puoi fare per tutti i DIV che vuoi. Ragiona però come "codice HTML" generico: se per esempio ha tre DIV consecutivi da "includere", non occorre fare 3 file esterni. Mentre dovrai farne più di uno se i punti di inserimento sono diversi.

    In sostanza - per il tuo caso - un INCLUDE e un FILE ESTERNO per ogni punto di inserimento, a prescindere da cosa ci metti dentro.
    Infine, se fai questa cosa, lavora direttamente sempre con file ".php" anche per i file inclusi, per agevolarti eventuali modifiche future.

    Naturalmente ci sono molte altre possibilità, ma questo è quanto hai chiesto.

  3. #3
    Prima di tutto grazie mille! Sei molto gentile e molto chiaro! Quindi quello che devo fare è sostanzialmente modificare l'estensione di tutte le pagine e aggiungere semplicemente le istruzioni di inclusione.
    Per quanto riguarda le altre possibilità..quali sarebbero?Se hai una guida o qualcosa da consigliarmi dimmi tutto! Sto cercando di imparare php, mi sto cimentando nella creazione di un guestbook molto semplice ma ho un po' di problemi grazie mille per tutto!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    La modifica delle estensioni è sufficiente nella maggior parte (quasi totalità) dei casi di web server con motore PHP che tipicamente interpretano i file con estensioni ".php" passandoli al parser PHP. Cambiando l'estensione, quindi, dovresti riuscire a far sì che i tag PHP vengano riconosciuti e il comando "include" sia eseguito correttamente: fai qualche prova.
    L'altra possibilità è sostanzialmente quella di pensare ad una struttura più complessa delle pagine (per esempio tipicamente viene realizzato un file per la testata - o "header" - uno per il corpo - o "body" - ed uno per il piè di pagina - o "footer" - per tutto il sito; di solito "header" e "footer" variano poco o nulla da una pagina all'altra, mentre il "body" - la parte centrale più corposa - è quello sostanziale): tutto dipende da cosa esattamente devi realizzare... tieni anche conto che il file incluso può essere a sua volta un "php" (di solito conviene) e dunque variare "dinamicamente" in base alla pagina in cui è chiamato.

    Non ho in questo momento in mente guide particolari da riferirti. Forse la cosa migliore è davvero che provi a realizzare qualcosa.

  5. #5
    Esatto il mio sito è realizzato proprio seguento questa struttura, dovrei ripetere l'header, il footer, e un altro div che non fa parte di quelli di struttura ma è presente in ogni pagina. Grazie mille! Faccio qualche prova e vediamo cosa viene fuori!

  6. #6
    Ciao! Ho fatto come mi hai consigliato, ora le pagine sono in .php e sono presenti i file .htm con include()..ho un'ultima domanda che non riguarda prettamente php..ora, avendo modificato tutto le pagine del sito (20 - 25 file, è un sito molto modesto), se un visitatore ha una copia in cahce dell'home page, tutti i collegamenti dell'home page si riferiscono ai file precedenti l'aggiornamento, quindi ai file .htm! Ora se uno ne sa un po', magari svuota la cache e aggiorna, ma uno che non sa niente? Non crea problemi a utenti che non se ne intendono? Grazie mille! Scusa se è una domanda stupida!

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    27
    ma se aggiorni i link in tutte le pagine ciò che dici non dovrebbe accadere dopo un refresh. :master:

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    il browser dovrebbe riconoscere che la home è modificata e quindi caricare la nuova versione ed a quel punto avere tutti i link corretti

  9. #9
    perchè dopo aver modificato tutto, io ho aperto il portatile e ho guardato il sito e in cache c'era una copia vecchia che è stata tenuta, svuotata la cache e aggiornato e poi tutto ok..il refresh avviene in automatico dopo quanto?

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.