2010-11-23 15 views
0

En PHP5, le code: session_register("");CakePHP: comment enregistrer la session?

mon code:

function login() { 
     // Don't show the error message if no data has been submitted. 
     $this->set('error', false); 

     // Production mode. No output. For AJAX 
     Configure::write('debug', 0); 

     // Does not render the view 
     // Others method : $this->render(false, false); 
     $this->autoRender = false; 

     // The most important : set : debug = 0 and register session 
     session_register(""); 

      $this->Session->write('test',"test1"); 

       echo $this->Session->read('test'); 
     } 
     return ; 
    } 
+1

avez-vous pas un indésirable '}' 'avant le retour, la déclaration'? –

+0

Quelle version de CakePHP utilisez-vous? – Leo

Répondre

1

Ce code est obsolète depuis 2001-2002

Pour stocker les données de la session, vous devez utiliser:

$this->Session->write('name', 'value'); 

Pour obtenir les données stockées dans la session, utilisez:

$data = $this->Session->read('name'); 

name est le nom de la variable de la session

+0

Mais quand je mets ce code ($ this-> autoRender = false;) dans la fonction, la Session ne peut pas être écrite. – Shamrocker

+0

'autoRender' n'a rien à voir avec les sessions, et n'a rien à voir avec la fonction obsolète' session_register', ce qui est inutile de nos jours. – zerkms

+0

quand j'ajoute le code (session_register ("");), il travaillera, et il recevra aussi l'erreur, mais la session pourrait être écrire. – Shamrocker