Ewebeditor 文件上傳問題
更新時間:2009年07月05日 00:43:05 作者:
Ewebeditor 上傳的文件要么是直接播放或顯示的,要么是用固定的格式做一個鏈接。
當(dāng)用戶有特殊要求時,程序員不得不研究 Ewebeditor 的代碼,相當(dāng)麻煩。我就是經(jīng)歷過這個過程終于實(shí)現(xiàn)了客戶的一個要求:網(wǎng)頁上在某些文字后面做一個鏈接,用戶點(diǎn)擊后出現(xiàn)一個圖片或一個詳細(xì)介紹或一段視頻??紤]到網(wǎng)頁上只顯示某些文字,我設(shè)置了這樣的一個功能:上傳時將文件名該為要顯示的某些文字,上傳時我們可以截取那些文字(去掉文件類型)。考慮到管理員刪除時要將 Ewebeditor 上傳的文件也刪除,我們必須將文件的路徑提取出來并把它們存入數(shù)據(jù)庫;并且每一次有可能上傳多個文件,我們必須把多個文件的路徑都讀出來并且要存入到數(shù)據(jù)庫表格的一個字段中,所以我把路徑寫入到 $_SESSION 中,然后在另外一個頁面將文件的路徑進(jìn)行處理。
1. 首先要賦給 uploadfile 權(quán)限,使這個文件夾能被寫入和讀出。
2.include/upload.php
// 保存操作
function DoSave()
{
global $sContentPath,$sSaveFileName,$sOriginalFileName;
DoUpload();
$sPathFileName = $sContentPath . $sSaveFileName;
$pathnum = count( $_SESSION["ewebpath"] );
$_SESSION["ewebpath"]["$pathnum"] = $sPathFileName;
// 獲取 eweb 上傳的文件的路徑,并且把每次上傳的文件的路徑寫入 session , 在另一個頁面得到路徑后寫入數(shù)據(jù)庫
/*$path = array();
$pathnum = count( $_SESSION["ewebpath"] );
for( $i=0; $i<$pathnum; $i++ )
{
$path[$i] = $_SESSION["ewebpath"][$i];
$path[$i] = substr( $path[$i], 8 ); // 此處喲啊根據(jù)實(shí)際情況對路徑進(jìn)行處理
}
$path = implode( '|', $path );
session_unregister( "ewebpath" );*/
OutScript("parent.UploadSaved('$sPathFileName');var obj=parent.dialogArguments.dialogArguments;if (!obj) obj=parent.dialogArguments;try{obj.addUploadFile('$sOriginalFileName', '$sSaveFileName', '$sPathFileName');} catch(e){}");
}
3.startup.php 中修改 ewebeditor 支持的上傳文件的格式。
4.dialog/file.htm
// 取文件名到隱藏的輸入框
function GetFileName(url, opt)
{
d_filename.value=url.substr(url.lastIndexOf(opt)+1);
// 取不帶后綴的文件名(如 “ 信號與系統(tǒng) .doc” 將得到 “ 信號與系統(tǒng) ” )
s1=d_filename.value.split(".");// 分割字符串
d_filename.value=s1[0];
}
1. 首先要賦給 uploadfile 權(quán)限,使這個文件夾能被寫入和讀出。
2.include/upload.php
復(fù)制代碼 代碼如下:
// 保存操作
function DoSave()
{
global $sContentPath,$sSaveFileName,$sOriginalFileName;
DoUpload();
$sPathFileName = $sContentPath . $sSaveFileName;
$pathnum = count( $_SESSION["ewebpath"] );
$_SESSION["ewebpath"]["$pathnum"] = $sPathFileName;
// 獲取 eweb 上傳的文件的路徑,并且把每次上傳的文件的路徑寫入 session , 在另一個頁面得到路徑后寫入數(shù)據(jù)庫
/*$path = array();
$pathnum = count( $_SESSION["ewebpath"] );
for( $i=0; $i<$pathnum; $i++ )
{
$path[$i] = $_SESSION["ewebpath"][$i];
$path[$i] = substr( $path[$i], 8 ); // 此處喲啊根據(jù)實(shí)際情況對路徑進(jìn)行處理
}
$path = implode( '|', $path );
session_unregister( "ewebpath" );*/
OutScript("parent.UploadSaved('$sPathFileName');var obj=parent.dialogArguments.dialogArguments;if (!obj) obj=parent.dialogArguments;try{obj.addUploadFile('$sOriginalFileName', '$sSaveFileName', '$sPathFileName');} catch(e){}");
}
3.startup.php 中修改 ewebeditor 支持的上傳文件的格式。
4.dialog/file.htm
復(fù)制代碼 代碼如下:
// 取文件名到隱藏的輸入框
function GetFileName(url, opt)
{
d_filename.value=url.substr(url.lastIndexOf(opt)+1);
// 取不帶后綴的文件名(如 “ 信號與系統(tǒng) .doc” 將得到 “ 信號與系統(tǒng) ” )
s1=d_filename.value.split(".");// 分割字符串
d_filename.value=s1[0];
}
相關(guān)文章
FCKeditor smarty 編輯器的應(yīng)用PHP
自己仔細(xì)研究一下很容易解決你這個問題的。這并不是一個很困難的任務(wù)。其實(shí)這里很多都是菜鳥級別的2012-07-07百度編輯器 如何獲取光標(biāo)位置與不同幀內(nèi)的節(jié)點(diǎn)
當(dāng)我們console.log(domUtils)的時候,可以在控制臺中,看見很多domUtils下的方法,這些方法都是用于操作節(jié)點(diǎn)的,findParentByTagName()顧名思義,獲取的是節(jié)點(diǎn),當(dāng)我們的光標(biāo)在編輯器內(nèi)容處,而我們要獲取相應(yīng)內(nèi)容外層節(jié)點(diǎn)的id以及各種屬性,就需要通過domUtils來獲得不同幀內(nèi)的節(jié)點(diǎn)2012-07-07FCKeditor 2.6.6在ASP中的安裝及配置方法分享
FCKeditor目前的最新版本是2.6.6,在網(wǎng)上搜索此版本的配置方法,發(fā)現(xiàn)很少有asp的配置方法,以下就把自己的一些配置經(jīng)驗(yàn)分享給有需要的你。2012-03-03DISCUZ論壇的UBB編輯器(增加靈活調(diào)用,支持ASP UBB解析)打包下載
從Discuz分離的網(wǎng)頁編輯器,大家可以加到自己的頁面上2008-04-04fckediter javascript事件函數(shù)代碼
fckediter javascript事件函數(shù)代碼,另外fckeditor的可以擴(kuò)展性不錯,大家可以學(xué)習(xí)下,具體的代碼,可以參考腳本之家以前發(fā)布的文章。2009-12-12FCKeditor2.3 For PHP 詳細(xì)整理的使用參考
FCKeditor2.3 For PHP 詳細(xì)整理的使用參考...2007-11-11編輯器中designMode和contentEditable的屬性的介紹
先解釋一下在線編輯器的原理:首先需要IE5.0以上版本的支持.因?yàn)镮E5.0以上版本有一個編輯狀態(tài),designMode是document的屬性,意思是設(shè)置或獲取表明文檔是否可被編輯的值,默認(rèn)值為off或Inherit2008-11-11