首页 > 解决方案 > 刷新php中的mysql表值

问题描述

很长一段时间以来,我一直在尝试解决一个问题。用户登录后,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'],但我不知道该怎么做。也许有更好的解决方案?

标签: phpmysql

解决方案


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

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

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


推荐阅读