刷新php中的mysql表值

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (62)

很长一段时间以来,我一直试图解决一个问题。用户登录后,php脚本将从其mysql行检索所有信息。

...
if ($rezultat = @$polaczenie->query(

        sprintf("SELECT * FROM kontabankowe WHERE login = '%s' AND haslo = '%s'",
            mysqli_real_escape_string($polaczenie, $login),
            mysqli_real_escape_string($polaczenie, $haslo)))) {
        $ilu_userow = $rezultat->num_rows;

        if ($ilu_userow > 0) {
            $_SESSION['zalogowany'] = true;

            $wiersz = $rezultat->fetch_assoc();

            $_SESSION['id'] = $wiersz['id'];
            $_SESSION['imie'] = $wiersz['imie'];
            $_SESSION['nazwisko'] = $wiersz['nazwisko'];
            $_SESSION['login'] = $wiersz['login'];
            $_SESSION['haslo'] = $wiersz['haslo'];
            $_SESSION['nrkonta'] = $wiersz['nrkonta'];
            $_SESSION['pieniadze'] = $wiersz['pieniadze'];

            $rezultat->free_result();
...

然后,我以这种方式在我的应用程序中显示这些数据:

<div id="pieniadze">
    <span>Dostępne środki: <?php echo $_SESSION['pieniadze'] ?></span> PLN
</div>

但是在应用程序的后续操作中$_SESSION['pieniadze'] ,mysql中的值更改为不同的值,在上面的位置,将显示先前的值

在我看来,在我更新这个值的地方,它应该重新下载mysql的值并将其转换为变量$_SESSION['pieniadze'],但我不知道该怎么做。也许有更好的解决方案?

提问于
用户回答回答于

阅读关于会话。如果您正在会话中存储数据。并且它将包含数据直到那时你没有销毁会话。

要解决此问题,您可以执行以下操作:只能在会话中保存用户ID,并且在该ID的基础上,您可以获取用户数据。

用户回答回答于

如果要更新值,请每次执行MYSQL查询,以便刷新值。它会影响性能,但是唯一的方法。

因此,您可以将用户标识保存在会话变量中,然后检索所有请求中的其余数据。

会话变量以PHP为用户存储信息,MYSQL不直接涉及。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励