Buonasera, nel mio sito carico una pagina in php memorizzata nel db, ma il codice non viene eseguito. Credo dipenda dal fatto che venga inserita dal server così com'è senza elaborarla prima. Esiste un modo per farla eseguire? Grazie.
Se la mandi in output e basta, non viene eseguita. Puoi eseguire codice php con la funzione eval(), oppure salvare la pagina in un file e poi usare include().
In entrambi i casi, eseguire codice php così potrebbe non essere una mossa molto sicura. Devi essere certo che nessuno possa infilarci codice dannoso.
Grazie della risposta. Sto cercando di creare un sito dove le pagine sono salvate sul DB e poi le richiamo con una queryString. Con quelle in puro HTML non si sono problemi, ma appena ne richiamo una dove c'è PHP questo appare in chiaro sulla pagina senza essere eseguito.
Nota che salvare le pagine nel database non è un metodo molto saggio: a parte la complessità aggiunta, il tuo sito caricherà più lentamente rispetto ad uno che usa normali file. Se ci sono errori nelle pagine, sarà più difficile il debugging.
A meno che tu non lo stia facendo per divertimento od esercizio, la tua soluzione sembra più complessa del necessario.
E se mettessi solo i testi nel database mentre la struttura delle pagine la carico con degli include() sarebbe meglio? Comunque lo sto facendo perchè voglio che un altra persona possa creare pagine senza accedere al pannello di altervista, sto creando una sorta di editor.
Si, mettere i contenuti nel database e tenere i template sotto forma di file è una buona idea: in questo modo chi riempie le pagine non rompere il codice o fare danni. Invece di "tutta la pagina" chi edita il sito modificherebbe solo il contenuto principale.