网络编程 
首页 > 网络编程 > 浏览文章

Ewebeditor 文件上传问题

(编辑:jimmy 日期: 2024/7/9 浏览:3 次 )
当用户有特殊要求时,程序员不得不研究 Ewebeditor 的代码,相当麻烦。我就是经历过这个过程终于实现了客户的一个要求:网页上在某些文字后面做一个链接,用户点击后出现一个图片或一个详细介绍或一段视频。考虑到网页上只显示某些文字,我设置了这样的一个功能:上传时将文件名该为要显示的某些文字,上传时我们可以截取那些文字(去掉文件类型)。考虑到管理员删除时要将 Ewebeditor 上传的文件也删除,我们必须将文件的路径提取出来并把它们存入数据库;并且每一次有可能上传多个文件,我们必须把多个文件的路径都读出来并且要存入到数据库表格的一个字段中,所以我把路径写入到 $_SESSION 中,然后在另外一个页面将文件的路径进行处理。
1. 首先要赋给 uploadfile 权限,使这个文件夹能被写入和读出。
2.include/upload.php
复制代码 代码如下:
// 保存操作
function DoSave()
{
global $sContentPath,$sSaveFileName,$sOriginalFileName;
DoUpload();
$sPathFileName = $sContentPath . $sSaveFileName;
$pathnum = count( $_SESSION["ewebpath"] );
$_SESSION["ewebpath"]["$pathnum"] = $sPathFileName;
// 获取 eweb 上传的文件的路径,并且把每次上传的文件的路径写入 session , 在另一个页面得到路径后写入数据库
/*$path = array();
$pathnum = count( $_SESSION["ewebpath"] );
for( $i=0; $i<$pathnum; $i++ )
{
$path[$i] = $_SESSION["ewebpath"][$i];
$path[$i] = substr( $path[$i], 8 ); // 此处哟啊根据实际情况对路径进行处理
}
$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);
// 取不带后缀的文件名(如 “ 信号与系统 .doc” 将得到 “ 信号与系统 ” )
s1=d_filename.value.split(".");// 分割字符串
d_filename.value=s1[0];
}
上一篇:PHP网页 Ewebeditor 编辑器嵌入方法
下一篇:让 FCKeditor 支持多用户Web环境(以PHP为例)
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?