Ewebeditor 文件上传问题

时间:2021-05-28

当用户有特殊要求时,程序员不得不研究 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 , 在另一个页面得到路径后写入数据库

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];
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章