Come si memorizza e si recuperano le variables di session personalizzate in Drupal 6?

Drupal utilizza un gestore di sessioni personalizzato che cambia il familiare …:

$_SESSION['foo'] = 'bar';
echo $_SESSION['foo'];

…comportmento. La variabile di session sopra di "pippo" non persisterebbe da una pagina all'altra.

Molti commenti e le voci del forum su Drupal.com sollevano il problema che Drupal utilizza un gestore di session personalizzato per motivi di performance e supporto del cluster di server. Tuttavia, non riesco a trovare esempi specifici che rispondano alla domanda: "È necessario gestire le proprie variables di session tra le pagine in Drupal e non si vuole ricorrere ai cookie? Ecco come si fa …"

Qualcuno ha esperienza con questo? Il mio utilizzo NON sarebbe all'interno di pagine Drupal esterne ma all'interno delle pagine template. Questo è per un utente anonimo, non uno registrato. Il comportmento $ _SESSION è come previsto in quel caso.

Ok, ecco la risposta – $ _SESSION funziona come previsto per gli utenti autenticati e gli utenti anonimi – se non ci sono altri problemi!

Ho scoperto che avevo il seguente problema; la mia tabella "utenti" Drupal (o nel mio caso "drupal_users") mancava un utente con un UID di zero ("0").

Drupal utilizza UID 0 per gestire le sessioni in un database tramite il gestore di sessioni personalizzato. Se quell'utente non esiste nella tabella (dovrebbe essere lì per impostazione predefinita), Drupal non può albind informazioni sulla session all'utente anonimo.