establecer sesión en la base de datos en php

¿Cómo puedo usar la sesión en la tabla de la base de datos con php y mysql?

Necesitarías crear un objeto como ese:

class SessionHandler { private static $lifetime = 0; private function __construct() //object constructor { session_set_save_handler( array($this,'open'), array($this,'close'), array($this,'read'), array($this,'write'), array($this,'destroy'), array($this,'gc') ); } public function start($session_name = null) { session_start($session_name); //Start it here } public static function open() { //Connect to mysql, if already connected, check the connection state here. return true; } public static function read($id) { //Get data from DB with id = $id; } public static function write($id, $data) { //insert data to DB, take note of serialize } public static function destroy($id) { //MySql delete sessions where ID = $id } public static function gc() { return true; } public static function close() { return true; } public function __destruct() { session_write_close(); } } 

¡Entonces, antes de iniciar session_start, inicia esta clase!

 include 'classes/sessionHandlerDB.php'; $session = new SessionHandler(); $session->start('userbase'); $_SESSION['name'] = 'Robert Pitt'; //This is sent to SessionHandler::write('my_id','Robert Pitt') echo $_SESSION['name']; //This calls SessionHandler::read($id)//$id is Unique Identifier for that 

http://php.net/manual/en/function.session-set-save-handler.php

http://php.net/manual/en/function.serialize.php

Usted controla esto en php.ini bajo la directiva session_handler . Visite http://www.tonymarston.net/php-mysql/session-handler.html para obtener un recorrido fácil (lo usó antes).

Necesitará usar session_set_save_handler para escribir funciones personalizadas de apertura, cierre, lectura, escritura, destrucción y recolección de basura.

Vea mi fragmento de código de github PHP5.4-DB-Session-Handler-Class para una clase de administración de sesión basada en una base de datos en PHP 5.4.