Così, ho impostato una pagina di accesso che verifica le credenziali dell'utente, quindi imposta i dati di sessione di codeigniter "email" e "is_logged_in" e alcuni altri elementi. La prima pagina dopo il login, i dati sono accessibili. Dopo quella pagina, non posso più accedere ai dati della sessione. Infatti, se provo a ricaricare quella prima pagina, i dati della sessione sono spariti.Sessione codificatore Dati non disponibili in altre pagine dopo il login
Ho provato a memorizzarlo nel database, memorizzandolo in modo non criptato (cattiva idea lo so, ma era per la risoluzione dei problemi), e memorizzandolo crittografato. Ho caricato automaticamente la libreria di sessione in config.php.
Ecco un esempio del codice che sto usando per impostare i dati di sessione:
$data = array(
'email' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
E per recuperarlo, sto usando:
$this->session->userdata('email');
O
$this->session->userdata('is_logged_in');
Ho lavorato molto con PHP e cookie e sessioni precedenti, ma questo è il mio primo progetto con Codeigniter e sono perplesso.
Potrebbe avere qualcosa a che fare con problemi di directory? Ho la pagina di accesso e il processo controllato da un controller di 'accesso', e quindi reindirizza a un controller 'sito'.
Grazie per il vostro aiuto, e per favore fatemi sapere se ho bisogno di chiarire qualsiasi cosa.
Hai visto nella voce della tabella del database dell'utente connesso è stato aggiunto o non nella tabella ci_sessioni? E array JSON per la colonna che hai archiviato –
Utilizza questa libreria di sessione nativa: –
AlamoPS
Durante la fase di sviluppo, disattivo le contromisure CSRF e XSS in config.php. Disattiva anche la sicurezza dei cookie in Dev. Basta non spingere il file Dev config.php in Prod. –