• 全国400电话网上服务平台
    强大号码库资源任选,方便,快捷,快速开通。
    咨询热线:400-1100-266  

    [原创]解决织梦游客投稿图片字段无法上传的问题
    POST TIME:2017-11-13 01:28
    最近跟版网小编接到一个微商货源网站的单子,在处理游客投稿那块的 时候遇到了一个问题:后台游客投稿设置好后,到前台发布的时候,上传图片字段时候还是需要登录才可以上传,但是更令人气愤的是登录进去上传完图片,但是却选择不了上传的图片。于是小编想到了修改一下这个字段。


    发布的页面修改成如下图:



    archives_add.htm 中修改的部分为(这个是参考那个缩略图的修改的,但是这个地方如果只需要这里是没办法上传成功的。):

    <label>货源封面:</label>
    <input class="file" name="touxiang" type="file" id="touxiang" onchange="SeePicNew('divpicview',this);" />

    archives_add.php 中怎么接到touxiang这个参数并上传保存呢?我的代码如下:

    $filename = MemberUploads('touxiang','',$cfg_ml->M_ID,'image','',-1,-1,true);
    SaveUploadInfo($title,$filename,1);

    这里使用的是织梦的MemberUploads函数,下面是这个函数的介绍:

    结合dedecms会员中心的头相上传功能。来谈谈dedecms的MemberUploads函数。

    首先我们看到include/helpers/upload.helper.php文件。

    function MemberUploads($upname,$handname,$userid=0,$utype='image',$exname='',$maxwidth=0,$maxheight=0,$water=false,$isadmin=false)

    首先我们介绍下以下参数

    1:$upname这个是文件上传的input type=file对应的哪个名称

    2:$handname 这个是图片所存储的文件夹名称

    3:$userid 这个是默认会员的ID

    4:$utype这个是文件类型,指的是上传的文件类型

    5:$exname这个是文件上传后的名称。如果没有指定的名称,那么将通过随即生成

    6:$maxwidth和$maxheight两个参数是指上传后图片尺寸

    7:$water和 $isadmin,一个是否加水印,一个操作是否是管理员。

    首先我们看if(!is_dir($cfg_basedir.$cfg_user_dir."/$userid"))
    {
    MkdirAll($cfg_basedir.$cfg_user_dir."/$userid", $cfg_dir_purview);
    CloseFtp();
    }

    如果要上传的文件所在的文件夹不存在。他会自动的尝试建立

    最主要的就是生成的文件名的规则。

    if($exname=='')
    {
    $filename = $cfg_user_dir."/$userid/".dd2char($nowtme.'-'.mt_rand(1000,9999)).'.'.$sname;
    }
    else
    {
    $filename = $cfg_user_dir."/{$userid}/{$exname}.".$sname;
    }

    这个是最终返回的文件名。至于传文件的过程,我们不会多做讲述,因为哪个是php的基本操作。

    按照这种方法就可以解决织梦游客投稿图片字段无法上传的问题


    
    关于我们 | 付款方式 | 建站知识 | 增值服务 | 网站模板
    Copyright © 2003-2016
    时间:9:00-21:00 (节假日不休)
    版权所有:巨人网络(扬州)科技有限公司
    总部地址:江苏省信息产业基地11号楼四层
    《增值电信业务经营许可证》 苏B2-20120278
    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信

    微信号已复制,请打开微信添加咨询详情!