代碼:$upfile='uploads/'.rand(0,10000).date('YmdHis').iconv("gb2312", "UTF-8", $_FILES['upload']['name']); //$upfile是上傳圖片的鏈接地址,存入數(shù)據(jù)庫在數(shù)據(jù)庫顯示的鏈接地址中原來的圖片中文名不能顯示出來,而且圖片后綴格式顯示不出來比如數(shù)據(jù)庫顯示的鏈接是:uploads/34420121102122153android寮而原來上傳的圖片是:android開發(fā)框架.jpg
2 回答

開滿天機
TA貢獻1786條經(jīng)驗 獲得超13個贊
首先,肯定是編碼問題造成的。
你這里有三個地方涉及到編碼問題,之間存在轉(zhuǎn)換,很可能錯亂,我建議你全部統(tǒng)一utf8的編碼
上傳的文件名
$_FILES['upload']['name']
??茨愕拇a,把這個由gb2312轉(zhuǎn)成utf8了,但是先要確定你的原文件名上傳上來是否真的是gb2312,需要轉(zhuǎn)換,如果不需要轉(zhuǎn)換。存入數(shù)據(jù)庫的時候,你的數(shù)據(jù)庫是什么格式的
數(shù)據(jù)庫讀出來的時候,展示的地方是什么格式的
建議你檢查這三個地方,分別打印出來看下,統(tǒng)一編碼,可以解決問題

天涯盡頭無女友
TA貢獻1831條經(jīng)驗 獲得超9個贊
一般采取的方式是:上傳后重新命名,在服務(wù)器采用存儲對應(yīng)表的方式,進行配對。各種操作系統(tǒng)存儲文件的編碼都不一樣,而程序代碼的編碼也是各種各樣,統(tǒng)一重命名存儲是最好的方式。
- 2 回答
- 0 關(guān)注
- 193 瀏覽
添加回答
舉報
0/150
提交
取消