首頁|建站|設計|QQ|百科|范文|電商|學習
dede 會員前臺無法上傳圖片的完美解決辦法

站長教程網   時間:2016-10-09   來源:建站知識

織夢5.7會員中心,由于為了安全性問題,限制了注冊會員在會員中心發布信息的時候上傳圖片,但是管理員登錄會員中心發布信息的時候上傳圖片卻不受影響。那該如何解決呢?下面我們來說明一下具體的解決方案。
首先,具體的問題為,注冊會員點擊圖片上傳,預覽選擇好本地圖后點擊上傳到服務器上,會出現如下圖所示結果:

圖片上傳失敗,并無像正常上傳圖片后提交按鈕跳轉到相應的圖像屬性界面上,僅在當前窗口上彈出一個滾動條,上面的滾動條里面提示為“提示:需輸入后臺管理目錄才能登陸”,但因滾動條高度受限制了所以我們看不到提示。想要查看具體的提升信息的話,請點擊向下的滾動條一直往下,即可出現文字提示。如圖:

 現在知道具體原因后就容易解決問題了,直接搜索織夢網站程序文件夾下的全部包含“提示:需輸入后臺管理目錄才能登陸“的文件,找到include\dialog\config.php文件。其中有段代碼

 //檢驗用戶登錄狀態
$cuserLogin = new userLogin();
 
if($cuserLogin->getUserID() <=0 )
{
if(emptyempty($adminDirHand))
{
ShowMsg("<b>提示:需輸入后臺管理目錄才能登錄</b><br /><form>請輸入后臺管理目錄名:<input type='hidden' name='gotopage' value='".urlencode($dedeNowurl)."' /><input type='text' name='adminDirHand' value='dede' style='width:120px;' /><input style='width:80px;' type='submit' name='sbt' value='轉入登錄' /></form>", "javascript:;");
exit();
}
$gurl = "../../{$adminDirHand}/login.php?gotopage=".urlencode($dedeNowurl);
echo "<script language='javascript'>location='$gurl';</script>";
exit();
}

將$cuserLogin = new userLogin();之后的代碼進行注釋后即可使注冊會員正常上傳圖片,具體注釋方法為:

 /*if($cuserLogin->getUserID() <=0 )
{
if(empty($adminDirHand))
{
ShowMsg("<b>提示:需輸入后臺管理目錄才能登錄</b><br /><form>請輸入后臺管理目錄名:<input type='hidden' name='gotopage' value='".urlencode($dedeNowurl)."' /><input type='text' name='adminDirHand' value='dede' style='width:120px;' /><input style='width:80px;' type='submit' name='sbt' value='轉入登錄' /></form>", "javascript:;");
exit();
}
$gurl = "../../{$adminDirHand}/login.php?gotopage=".urlencode($dedeNowurl);
echo "<script language='javascript'>location='$gurl';</script>";
exit();
}*/

以上方法雖然解決了注冊會員不能上傳圖片的問題,但是因為注釋了該部分代碼,導致了任何人都可以通過點擊瀏覽服務器,查看到uploads目錄下的全部目錄及文件,大大降低網站的安全性,所以需要進行安全性修復。

 

 
導致問題的根源在于瀏覽服務器功能降低了網站的安全性,而該功能基本上沒有任何用處,那最簡單的解決方案就莫過于直接取消這項功能。具體方法為,打開include\ckeditor\config.js文件,注釋掉以下代碼:
 /*fig.filebrowserImageBrowseUrl = "../include/dialog/select_images.php";*/

 

以上圖片為注釋瀏覽服務器功能后的最終效果圖。

 

上一篇:dede 如何調用最新5條文章 第一條加粗
下一篇:沒有了
31809铁算盘心水论坛