Salve a tutti,
Come da titolo, mi sono da poco avvicinato al PHP e, dal momento che ho intenzione di fare un minimo di progettazione prima di catapultarmi a scrivere codice su codice, ho preferito informarmi su vari aspetti... è da un paio di giorni che cerco e leggo diversi articoli e guide di base ma ho ancora alcuni dubbi su diversi aspetti, che una "lurkata" di 10 pagine non è stata in grado di chiarire![]()
Suppongo che mi convenga dividere ed organizzare anche i miei dubbi o altrimenti ne uscirà fuori un mega-post!![]()
Pertanto inizio con quello che mi preme di più; forse il post sarà un pochino lungo, ma cercherò di essere quanto più possibile ordinato e leggibile!
Dato che il sito che andrò a realizzare è abbastanza semplice, mi è venuto istintivo realizzarlo un include nell'index che includa la pagina indicata nella query string, ad es /index.php?page=nomepag.
Vi risparmio il codice dell'index.php perché penso che sia chiaro a tutti il meccanismo
In seguito mi è venuto qualche dubbio a riguardo:
( 1 )
Che non sia meglio (magari anche per l'indicizzazione) avere diverse pagine php, in ognuna delle quali si includano le parti (relativamente) statiche (header, menu, footer) ed avere links del tipo:
anziché:codice:miosito.it/pag1.php miosito.it/pag2.php ... miosito.it/pagN.php
?codice:miosito.it/index.php?page=pag1 miosito.it/index.php?page=pag2 ... miosito.it/index.php?page=pagN
...anche se, pensandoci, in fin dei conti l'HTML generato sarebbe identico e dovrebbe essere su quello che i motori di ricerca si basano (o mi sbaglio?). Tuttavia potrebbe forse essere più pratico (magari per siti di dimensioni maggiori o per questioni di "estendibilità") avere diverse pagine php.
Chiarimenti? Consigli? Opinioni?
( 2 )
Un altro dubbio che mi è venuto, probabilmente sciocco, riguarda proprio i file che vengono inclusi ed è il seguente:
è possibile che un motore di ricerca trovi quel singolo file e ci indirizzi l'utente, sulla falsariga di quanto effettivamente accade utilizzando i frameset (che personalmente abolirei!![]()
) ?
Mi spiego meglio:
- nel primo caso (miosito.it/index.php?page=nomepag) dovrei necessariamente includere se non altro il file nomepag.php:
è possibile che google (o chi per lui) rimandi l'utente su miosito.it/nomepag.php anziché su miosito.it/index.php?page=nomepag ?
(Oppure, ancora, rimanderebbe sempre e solo ad index.php e quindi sempre alla pagina predefinita?)
- nel secondo (miosito.it/nomepag.php) dovrei includere almeno header.php e footer.php.
Non vorrei mai che un ipotetico motore di ricerca rimandi l'utente su pagine come miosito.it/header.php o miosito.it/menu.php!
In entrambi i casi le conseguenze sarebbero alquanto comico-disastrose!![]()
Come si può evitare che ciò accada? Ho pensato che forse il file .htaccess potrebbe risolvere questo problema, anche se non ho avuto ancora il tempo per documentarmi.![]()
Cosa accade nella pratica?
Cosa si fa per, ad esempio, disabilitare l'accesso diretto a determinate pagine?
Ho pensato che forse si potrebbe mettere un controllo con annesso redirect in ogni pagina da includere, ma onestamente come soluzione mi sembra un tantino macchinosa...
Grazie per la pazienza![]()
![]()