bonjour à tous
j'ai un probléme avec les session
j'ai stocker les les session dans une base de donnée mais les erreurs qui s'affichent "Undefined index: expsubs in c:\program files\easyphp1-8\www...... "
voila mon code:
<?php
//fonctions des sessions
function _open()
{
global $_sess_db;
if ($_sess_db = mysql_connect('localhost', 'root', '')) {
return mysql_select_db('celibaliaudit', $_sess_db);
}
return FALSE;
}
function _close()
{
global $_sess_db;
return mysql_close($_sess_db);
}
function _read($id)
{
global $_sess_db;
$id = mysql_real_escape_string($id);
$sql = "SELECT data
FROM tblsessions
WHERE id = '$id'";
if ($result = mysql_query($sql, $_sess_db)) {
if (mysql_num_rows($result)) {
$record = mysql_fetch_assoc($result);
return $record['data'];
}
}
return '';
}
function _write($id, $data)
{
global $_sess_db;
$access = time();
$id = mysql_real_escape_string($id);
$access = mysql_real_escape_string($access);
$data = mysql_real_escape_string($data);
$sql = "REPLACE
INTO tblsessions
VALUES ('$id', '$access', '$data')";
return mysql_query($sql, $_sess_db);
}
function _destroy($id)
{
global $_sess_db;
$id = mysql_real_escape_string($id);
$sql = "DELETE
FROM tblsessions
WHERE id = '$id'";
return mysql_query($sql, $_sess_db);
}
function _clean($max)
{
global $_sess_db;
$old = time() - $max;
$old = mysql_real_escape_string($old);
$sql = "DELETE
FROM tblsessions
WHERE access < '$old'";
return mysql_query($sql, $_sess_db);
}
//fin fonctions des sessions
session_save_path("tmp");
ini_set("session.gc_maxlifetime","360000");
session_set_save_handler('_open', '_close', '_read', '_write', '_destroy', '_clean');
session_start();
// local path of web root
if (!defined("_PATH_USER"))
define("_PATH_USER", $_SERVER['DOCUMENT_ROOT']);
// local path of web folder
if (!defined("_LIB_PATH_USER"))
define("_LIB_PATH_USER", _PATH_USER ."/");
// URL of web root
if (!defined("_WWWROOT_USER"))
define("_WWWROOT_USER", "http://" . $_SERVER['SERVER_NAME']."/" );
?>
merci d'avance