PHPCMS v9上傳縮略圖“選擇的類型必須為圖片類型”解決辦法

2014-06-24 17:15:57來源:威易網(wǎng)作者:icech

用PHPCMS V9.5.6版本做了一個網(wǎng)站,上傳到服務(wù)器后發(fā)現(xiàn)一個問題。用chrome瀏覽器訪問正常,但是有些瀏覽器在上傳縮略圖的時候卻提示“選擇的類型必須為圖片類型”錯誤。

用PHPCMS V9.5.6版本做了一個網(wǎng)站,上傳到服務(wù)器后發(fā)現(xiàn)一個問題。用chrome瀏覽器訪問正常,但是有些瀏覽器在上傳縮略圖的時候卻提示“選擇的類型必須為圖片類型”錯誤。

現(xiàn)象是:選擇“上傳附件”,選擇了jpg格式的圖片之后,點(diǎn)擊“開始上傳”按鈕,進(jìn)度條100%了,但是卻在“列表”處不顯示好像上傳成功的圖片(實際上未上傳成功),再點(diǎn)擊“確定”按鈕,就會彈出“選擇的類型必須為圖片類型”錯誤提示。

\
點(diǎn)擊縮略圖

\
選擇圖片,然后上傳

\
提示錯誤

同樣的情況也會發(fā)生在內(nèi)容的“可視化文本編輯器”里面,點(diǎn)擊“圖像”上傳圖片,會報錯“您的會話已過期,請重新登錄。”

兩個應(yīng)該是同一個問題,但是為什么同樣的訪問,有些瀏覽器正常,但是有些瀏覽器出現(xiàn)這樣的錯誤呢?翻遍了網(wǎng)上論壇也沒找到原因。

好在有了一個解決辦法:

找到文件:/phpcms/modules/attachment/attachments.php

將“//判斷是否登錄”這個部分屏蔽掉,就是屏蔽21、22、23行(如圖)。

\

再次上傳圖片就正常了,不過是否有安全隱患呢?

另一種解決辦法:

修改21行代碼:

if(empty($this->userid)){

改為:

if(empty($this->userid) && empty($_POST['userid'])){

這樣就沒問題了,看起來比注釋要靠譜許多了。

關(guān)鍵詞:PHPCMS上傳

贊助商鏈接: