0

抱歉,如果这个问题之前已经回答过,但我不知道如何轻松描述它......

我正在使用 PHP 和 MySql 编写一个系统,该系统将允许登录的用户建立一个运动队。我已经设置了用户“出价”玩家的系统,并将该玩家添加到他们的名单中。写入数据库的代码非常简单并且工作正常:

mysql_query("UPDATE bidpool SET BidExpires='$newbidexpires' WHERE Player='$player'");
mysql_query("UPDATE bidpool SET CurrentBid='$bid' WHERE Player='$player'");
mysql_query("UPDATE bidpool SET TeamName='$NewTeamName' WHERE Player='$player'");

当我检查数据库时,该信息输入正确。

当我加载另一个页面时,团队更新的花名册所在的位置,这是我使用的代码:

echo "<table>";
$result = mysql_query("SELECT * FROM bidpool WHERE TeamName='$teamname'");

$playerbid = 0;
$i = 0;

$num = mysql_numrows($result);

while ($i < $num) {

    $playerroster = mysql_result($result, $i, "Player");
    $playerbid = mysql_result($result, $i, "CurrentBid");
    $playerexpires = mysql_result($result, $i, "BidExpires");

    IF ($time > $playerexpires) {

        $playerexpires = "BID WON";
    }

    echo "<tr> 
                    <td width='30%'>$playerroster</td>
                    <td width='30%'>$playerbid</td>
                    <td width='30%'>$playerexpires</td>
                    </tr>";
    $i++;
}
echo "</table">;

问题?当有新的出价时,一切都会写入数据库。当我在 Firefox 中加载花名册页面时,它会显示数据库中的花名册,即使是最近的更改也只会在几秒钟后显示。

但是,当我在 Safari 和 Chrome 中加载它时,它会显示旧版本的花名册。即使在我清除浏览器缓存、重置浏览器甚至重新启动计算机之后,它仍然显示数据库中的旧版本。

这种类型的系统需要多个用户在几天内对球员进行投标,要求球员尽快看到最近的投标和他们最近的名单变化。但如果浏览器不配合,它就不起作用。

如果有任何区别,该站点将在 WordPress 上运行。

你觉得我在这里做错了什么?为什么这个系统可以在一个浏览器中完美运行,而在另一个浏览器中却不行?

谢谢一堆。

4

1 回答 1

0

问题肯定是缓存问题;您可以通过插入一些额外的 URL 参数来测试它是客户端问题还是 Wordpress 问题。

尝试使用 ?extraRandomParameter=changeThisValueEachTime 访问页面。

如果可行,那是客户的事情;否则,您将不得不更具体地研究 Wordpress 如何缓存(以及如何绕过它)。

于 2013-06-03T05:47:24.620 回答