微信关注,获取更多

帝国cms 给附件存放目录位置添加自定义选项

文章来讲如何修改帝国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_enewspublicphome_是表前缀 我的是默认的
添加结构字段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'];//自定义目录

    
    $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.
本章完结,关注夜星空https://www.yeskylog.com/ 欢迎大家一起学习和 探讨!
 

未经允许不得转载:YESKYLOG » 帝国cms 给附件存放目录位置添加自定义选项

登录

找回密码

注册

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏