salve a tutti,
da qualche tempo ho uno strano problema con le sessioni di cui non riesco a venire a capo.
Sono abbastanza inesperto di php quindi può essere un mio utilizzo sbagliato della variabile $_SESSION, però non capisco il problema.

Spiego un attimo il funzionamento delle pagine in cui ho il problema:
la prima pagina chiamata aggiungi.php viene richiamata da ajax e dovrebbe aggiungere all'array $_SESSION un sottoarray con alcuni dati presi da un database Mysql.
la seconda pagina (contenuto.php) dovrebbe mostrarmi questo contenuto.

Ora, la prima pagina ha questo codice:
Codice PHP:
require_once('../config/config.inc'); 
$componente=mysql_fetch_array(mysql_query('SELECT id,img,map FROM componenti where id='.$_GET['id'].' limit 1')); 
$_SESSION[$componente['id']]=array('img'=>$componente['img']); 
echo 
$_SESSION[1]['img']; 
il file config.inc contiene la funzione session_start();
nell'ultima riga ho stampato la voce 1 di $_SESSION perchè nei miei test uso quello come unico indice inseribile, e la echo va a buon fine.

La seconda pagina:
Codice PHP:
require_once('../config/config.inc');
echo 
$_SESSION[1]['img']; 
invece qui la echo non va a buon fine!!!
Inoltre provando ad aggiungere un foreach che giri su $_SESSION e non viene fatto nemmeno un ciclo.

Ho provato ad usare un'altra variabile in $_SESSION, aggiungendo nella prima pagina $_SESSION['numcomp'] = 3; e poi a stamparla nella seconda pagina, e questa funzionava.
C'è quindi qualcosa che non va con l'assegnazione delle variabili nelle sessioni... ma cosa?

Spero di non essere stato troppo confuso nell'esporre il problema.