文章来讲如何修改帝国cms默认的附件存放地址、 首先知道帝国cms只提供了三个默认的附件存放目录地址而且还是写死无法改动的 分别是附件存放在栏目目录、/d/file/p目录、/d/file目录 这三个目录
我们现在需要选一个自定义的功能,下面我们来讲一下怎么实现 1.首先我们肯定要在参数设置--文件设置的页面表单下添加一个选项框和一个文本输入框、 2.已知文件存放目录是三个单选框 名字是fpath 参数是 0=(栏目目录) 1=(/d/file/p目录)2=(/d/file目录) 那么我们就添加一个 3=(自定义目录)的选项 <input type="radio" name="fpath" value="3"<?=$r[fpath]==3?' checked':''?>> 自定义目录 3.有了选项框还要个文本输入框吧,拟定name为customfilepath <input name="customfilepath" type="text" id="customfilepath" value="<?=$r[customfilepath]?> 把这两个添加到/e/admin/SetEnews.php文件 搜索附件存放目录找到位置 <tr> <td rowspan="2" valign="top" bgcolor="#FFFFFF">附件存放目录</td> <td height="25" bgcolor="#FFFFFF"><input type="radio" name="fpath" value="0"<?=$r[fpath]==0?' checked':''?>> 栏目目录 <input type="radio" name="fpath" value="1"<?=$r[fpath]==1?' checked':''?>> /d/file/p目录 <input type="radio" name="fpath" value="2"<?=$r[fpath]==2?' checked':''?>> /d/file目录 <input type="radio" name="fpath" value="3"<?=$r[fpath]==3?' checked':''?>> 自定义目录:<input name="customfilepath" type="text" id="customfilepath" value="<?=$r[customfilepath]?>" size="38"><font color="#666666">(如/pic/d/file/,形式、需去网站建立目录权限755)</font></td> </tr>/******红色部分是添加部分***/
改完的效果是这个的
4.有了表单还不行啊 得做字段存储吧 1.进入phpMyAdmin管理数据表 找到phome_enewspublic表phome_是表前缀 我的是默认的 添加结构字段customfilepath 类型varchar 长度30 或者直接在帝国cms后台使用sql语句添加 2.然后到/e/admin/SetEnews.php文件 搜索$ernurl=hRepPostStr2(eDoRepPostComStr($add['ernurl'],1)); 在后面添加$add['customfilepath']=hRepPostStr($add['customfilepath'],0);
搜索 ,ernurl='".eaddslashes($ernurl)."' 在后面添加 ,customfilepath='$add[customfilepath]'
一个逗号都不要少
在改文件/e/class/connect.php 搜索 //返回附件目录 //***红色部分为新增部分***// function ReturnFileSavePath($classid,$fpath=''){ global $public_r,$class_r,$empire,$dbtbpre; $fpath=$fpath||strstr(','.$fpath.',',',0,')?$fpath:$public_r['fpath']; $ur=$empire->fetch1("select customfilepath from {$dbtbpre}enewspublic limit 1");//查询网站设置数据记录表 $customfilepath=$ur['customfilepath']?$ur['customfilepath']:'d/file/';//自定义目录 $efileurl=eReturnFileUrl(); if($fpath==1)//p目录 { $r['filepath']='d/file/p/'; $r['fileurl']=$efileurl.'p/'; } elseif($fpath==2)//file目录 { $r['filepath']='d/file/'; $r['fileurl']=$efileurl; } elseif($fpath==3)//自定义目录 { $r['filepath']=$customfilepath; $r['fileurl']=$efileurl; } else { if(empty($classid)) { $r['filepath']='d/file/p/'; $r['fileurl']=$efileurl.'p/'; } else { $r['filepath']='d/file/'.$class_r[$classid][classpath].'/'; $r['fileurl']=$efileurl.$class_r[$classid][classpath].'/'; } } return $r; }
*注意:目录权限最少要755.
帝国cms 给附件存放目录位置添加自定义选项之缩图自定义目录续篇http://bbs.phome.net/showthread-13-367240-0.html 本章完结。
|