从数据库更新会话值

时间:2013-05-28 13:12:32

标签: php session

我想更新会话值。我取消了Session的旧值,然后想要设置用查询保存在数据库中的新值。执行查询后,我希望此会话ID设置新的更新值。

if(($_GET['msg'] == 'yes')){

/********* Unset Session Value ******************/
unset($_SESSION['Auth']['User']['curreny']);

/*******Now how to update session value that is updated in the database by the query ************/
.........................
}

1 个答案:

答案 0 :(得分:1)

如果我正确理解了这个问题,你想从数据库中读取一个值。

我假设你有一个id,存储在$ _SESSION ['Auth'] ['ID']中,它提供数据库中用户的用户ID。

首先,您从数据库中请求新值(请注意,我需要知道用户的ID),然后将其存储在会话结构中。 (如果您不熟悉PHP中的数据库查询,请查看PHP MySQLi扩展)

$stmt = $mysqli->prepare("SELECT currency FROM user WHERE id=? LIMIT 1");
$stmt->bind_param ('i', $_SESSION['Auth']['ID']);
$stmt->execute();
$stmt->bind_result($id);
if ($stmt->fetch()) {
    $_SESSION['Auth']['User']['Currency'] = $id;
}

就像你看到的那样,在存储之前我不需要unset Session值。只是做一下,你在开头有session_start