从数据库更新Session值


Update the Session value from database

我想更新会话值。我取消了会话的旧值,然后想要设置新的值,这是保存在数据库中的查询。在执行查询之后,我希望这个会话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 ************/
.........................
}

如果我正确理解了问题,您想要从数据库中读取值。

我假设,您已经获得了一个id,存储在$_SESSION['Auth'][' id ']中,它提供了数据库中用户的用户id。

首先从数据库请求新的Value(注意,我需要知道用户的ID),然后将其存储在Session结构中。(如果您不熟悉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_start