茫茫網海中的冷日
         
茫茫網海中的冷日
發生過的事,不可能遺忘,只是想不起來而已!
 恭喜您是本站第 1670499 位訪客!  登入  | 註冊
主選單

Google 自訂搜尋

Goole 廣告

隨機相片
IMG_0032.jpg

授權條款

使用者登入
使用者名稱:

密碼:


忘了密碼?

現在就註冊!

站長日誌 - [暴怒]該死的IE7!
 訂閱 冷日 的日誌

2008-11-03
[暴怒]該死的IE7!

作者: 冷日 (11:35)
不知道大家在網路上生活了這麼久,知不知道IE有一個設定?
在IE6裡面叫做『永遠將URL傳送成UTF-8』,在IE7則被改名叫做『傳送 UTF-8 URL』。

在以前的時代,因為這個選項預設是開啟的,所以很多Big5編碼的中文檔名會出問題。
導致中文檔案下載、傳輸、開啟這些問題就不斷的困擾著所有程式設計師 無力感
這也是為何冷日要採用UTF-8編碼來做網頁的原因之一。

但是這個該死的IE7 怒火中燒
原本IE6中『永遠將URL傳送成UTF-8』這個進階選項在預設是開啟的,到了IE7,這個選項雖然變成了『傳送 UTF-8 URL』,但預設也是開啟的。
可是呢,很不幸的,一堆人碰到的中文檔名的問題:
IE7(Vista) 無法下載 FTP 中文檔名檔案
PS:自己的IIS加上自己的IE7也會出問題,真是好樣的M$ㄚ~~~暗
論壇附件使用中文檔名在IE7中無法下載,如何解決?
別跟我說下載不到中文檔名的檔案
PS:鴕鳥的不用中文檔名!?倒地

特別要強調的是,冷日已經很習慣的 IE6 在上述的大部分時候都很正常 狂暴
PS:當然是走UTF-8啦!



冷日為啥會發現這個問題呢!?主要是冷日在使用的xoops下載模組wfdownload,今天聽到客戶反應無法下載!?冷日測試的時候都很正常ㄌㄟ!?這到底是怎樣!? 不會吧
後來看到Goole查出來發現其他xoops的模組應該也會有類似的狀況,就讓冷日相信這是IE7的問題,不是xoops或是PHP的錯,所以標題叫做『該死的IE7』 嘎嘎

冷日為了解決這樣的問題,總不能讓客人無法下載檔案吧!?只好再拜Goole大神!
看到了這麼一篇文章:下載檔案-中文檔名問題
雖然他使用的ASP,但是倒也是給了冷日一個靈感:
PHP也有Url Path Encodeㄚ完美計畫
那我們就來這樣幹吧!

首先找出xoops中wfdownload實際處理下載檔案的『visit.php』
然後找到:
header("Content-Disposition: attachment; filename=" . $file_name);

冷日的作法是「把他Mark起來以後加入一行新的」如下:
    //header("Content-Disposition: attachment; filename=" . $file_name);
		//	冷日 2008-11-03 為了IE7無法下載,測試把檔案名稱Encode一次!
		header("Content-Disposition: attachment; filename=" . urlencode($file_name) );

再來SAVE & CLOSE
最後就是去你的xoops前台測試看看ㄌㄡ~~~ 樂奔

有沒有看到快感ㄚ!?
冷日目前測試,IE7、FireFox、Goole的Chrome都可以正常下載!
PS:本來就是只有IE7不正常啦,連IE6都可以的說,IE7真是越活越回去了 昏死
大家可以快快樂樂的收工啦! Good Job

最後一罵,微軟自己的討論區上一堆相關問題『在 HttpHandler 中設定 context.Response.HeaderEncoding 無效的問題』ㄚ!死M$還不改!?
冷日的這個方法雖然有效,但也有論壇提到的問題:『缺點就是,直接點選開啟檔案時,於Word/Excel等程式中,檔名會變成%xx%xx的Unicode碼...>_<"』!
這個問題一樣,FireFox、Chrome都很正常,唯有該死的IE7就是會有這個笨問題! 印堂黑黑
閱讀 冷日 的日誌 | 迴響 (2) | 引用次數 (0) | 瀏覽次數 (4567)
列印這一篇日誌  發送這篇日誌給你的朋友(Email) 
 

 
 

 
 

 
 
 
這些評論各由發表者自負責任. 對於他們的發言內容, 本站不提供任何擔保.
張貼者 討論串
筆痕
張貼日期: 2008/11/12 17:14  更新日期: 2008/11/12 17:14
 回覆: [暴怒]該死的IE7!
^^::
年底IE8要出來囉~
呼~~加油加油!
回覆
冷日
張貼日期: 2008/11/13 9:41  更新日期: 2008/11/13 9:41
Webmaster
註冊日: 2008/2/19
來自:
張貼數: 15771
 回覆: [暴怒]該死的IE7!
蝦密!?
冷日還在用IE6耶~~~
IE8要推出來啦!?
這個該死的M$ㄚ~~~
回覆

Powered by XOOPS 2.0 © 2001-2008 The XOOPS Project|