php
  • mysql
  • database
  • 2013-06-03 26 views 0 likes 
    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上運行。

    你覺得我在這裏做錯了什麼?爲什麼這個系統在一個瀏覽器中完美地工作,而不是另一個?

    謝謝你一堆。

    +0

    我可以問你,如果你沒有加載另一個本地版本的網站?因爲這裏的一切都是服務器端的,這對你解釋的問題確實很令人不安。 – Jerska

    +0

    任何你有WordPress緩存插件的機會? – j08691

    +0

    奇怪,你確定WordPress沒有緩存? – 2013-06-03 03:25:10

    回答

    0

    這個問題肯定是一個緩存問題;您可以通過插入一些額外的URL參數來測試它是客戶端還是Wordpress問題。

    嘗試使用?extraRandomParameter = changeThisValueEachTime創建頁面。

    如果有效,這是一個客戶的事情;否則,你將不得不更具體地調查Wordpress緩存(以及如何避開它)。

    相關問題