io proverei in questo modo: convertire l'oggetto user in array (serializzato) ogni qualvolta deve essere passato in sessione. Quando volessi recuperare l'oggetto per il richiamo dei metodi, convertirei l'array serializzato in object con un cast sul tipo di classe User
Allora vediamo se ho capito:
Maje grazie per l'imbeccata solo che se io anche senza serializzare i dati faccio per esempio
Codice PHP:
$user = $_SESSION['user'];
Dove in session è stato memorizzato in precedenza l'oggetto $user, tutto funziona infatti se stampo $_SESSION['user'] il risultato è il seguente:
Array ( [user] => User Object ( [user_id

rivate] => 1 [username

rivate] => matteo.furletti [password

rivate] => 30eeca1567998f84ab250cd3ec69e03b [authentication

rivate] => 1 [email

rivate] =>
matteo.furletti@gmail.com [token

rivate] => 30eec )
Il mio problema è un altro ovvero, la mia pagina index.php è fissa, cambiando il parametro page=xxx nella query string, dovrei visualizzare la mia pagina infatti se io passo page=main come nell'esempio sottostante
con il seguente codice:
Codice PHP:
$fields = setURI( $uri );
$user = $_SESSION['user'];
switch ( getUriPage($fields) ) {
case "main":
$metaTag = array("language"=>"it");
$html = new HTMLGenerator("AREA RISERVATA::KICK BOXING TEAM");
$html->setMeta($metaTag);
$html->setContent(getUriPage($fields));
$html->outputPage();
break;
La pagina mi viene creata correttamente.... tanto il metodo $html->outputPage();
Codice PHP:
function outputPage() {
echo $this->doctype.$this->newLine.
'<html xmlns="http://www.w3.org/1999/xhtml">'.$this->newLine.
'<head>'.$this->newLine.
'<title>'.$this->titlePage.'</title>'.$this->newLine.
'<meta http-equiv="Content-Type" content="text/html; charset='.$this->charset.'" />'.$this->newLine.
$this->getMeta().
$this->getScript().
$this->getCss().
'</head>'.$this->newLine.
'<body>'.$this->newLine;
$this->getContent();
echo '</body>'.$this->newLine.
'</html>';
}
function getContent() {
$_SESSION['page'] = $this->contentPage;
include('html/index.php');
}
Come puoi notare con getContent(); vado ad eseguire l'include di una pagina ovvero html/index.php, il quale contiene il template da me realizzato...
ED E' PROPRIO IN QUESTA PAGINA MALEFICA 'html/index.php' CHE PERDO I RIFERIMENTI AGLI OGGETTI CREATI NELLA PAGINA PRINCIPALE, L'UNICO MODO E' UTILIZZARE $_SESSION
La domanda che mi pongo è la seguente: Con include io includo una porzione di codice messo da un altra parte, ma non vado in una nuova pagina....
E non so come fare