2011-05-26 34 views
7

hola me gustaría preguntar si es posible actualizar los datos de sesión guardados en la base de datos en codeigniter ,, por ejemplo. tengo una sesión userdata (roleID, name, logged_in), de modo que cuando alguien inicie sesión, simplemente llame al $data['name'] = $this->session->userdata('name'); y lo haga eco en mi vista de encabezado como <?php echo $name; ?> ,, el problema es cuando un usuario actualizará su nombre o apellido, y cuando hago estoactualización de sesión en codeigniter

$fname = $this->input->post('fname'); 
$lname = $this->input->post('lname'); 

$fullname = $fname." ".$lname; 
$this->session->unset_userdata('name'); 
$this->session->set_userdata('name',$fullname); 

que no funciona ..

// EDITAR trabajando en este momento ... solo error tipográfico y sintaxis de errror

+1

ese segundo unset debería leer set_ ¿verdad? –

+1

oh soy tan tonto ... su trabajo ayt ahora ... :) gracias –

Respuesta

16

Si desea actualizar los datos de la sesión, uso:

$this->session->set_userdata('name', $fullname); 

No hay necesidad de utilizar unset_userdata Más información here

0

No redeclare sesión de nuevo, sólo tiene que utilizar el código:

$this->session->set_userdata('session_variable_name', $newvalue); 

Ejemplo:

nueva Declaración de sesión :

$this->session->set_userdata(
       array(
       'year' => 2017 
       )); 

actualización de valores de sesión actual 'años' en '2018':

$this->session->set_userdata('year', 2018); 
1

Para actualizar los datos de sesión, no hay necesidad de elemento de datos sesión de desarmar
La solución es la siguiente,
$this->session->set_userdata('name', $updatedName);

Cuestiones relacionadas