2010-01-18 42 views
1

我想將新圖片上傳到我的網頁,但在瀏覽器中顯示舊圖片。當我檢入文件夾時,新圖像正在保存,但未顯示在頁面中。我嘗試過清爽,但沒有幫助。關閉瀏覽器後仍然如此。我在不同的瀏覽器中測試過,它仍然是舊圖像。我需要幫助,我現在可以做些什麼。我使用Ajax的PHP編碼上傳圖片。圖片在我的瀏覽器中不顯示

+0

哪個網頁?你有我們可以檢查的鏈接嗎?如果IE嘗試Ctrl + F5,它會完成刷新,看看會發生什麼。 – Shoban 2010-01-18 22:06:01

回答

5

我不確定我完全理解你要完成什麼,但顯然有一些緩存正在進行。如果您上傳的圖片具有相同的文件名,並且拒絕刷新,或者您不想依賴刷新用戶緩存,則一個簡單的解決方案是將隨機數添加到問號後圖像src的結尾。即

<img src="/images/face.png?1234324"> 

...這實際上將使瀏覽器認爲該圖像是新的圖像(它是),並阻止它企圖利用瀏覽器的緩存。

+0

不錯,但不幸的是醜陋。太糟糕的瀏覽器忽略標準的HTTP頭。 – 2010-01-18 22:16:46

0

嘗試用不同的名稱重命名圖片。

3

嘗試在瀏覽器中按Ctrl-F5。這應該強制刷新緩存。

如果您使用腳本生成頁面,則可以在圖像的輸出標頭中傳遞no-cache http標誌。標題是:

Cache-control: no-cache 

編輯:我看到你在使用PHP,是否有任何機會,你可以「回聲」在一個單獨的PHP頁面的形象呢?然後你可以使用該行

header("Cache-control: no-cache"); 
0

嘗試清除緩存THEN刷新瀏覽器。儘管服務器上的內容發生更改,但您仍然可能看到緩存的圖像。

1

您是否正在使用新文件名更新圖片標籤的src屬性? o.O

+0

是的,從db和d中檢索文件名,然後放入src。 例如:src =「<?php echo」/upload/profile/thumb/".$rowdata['id']?> – jbcedge 2010-01-18 22:13:16

相關問題