解决织梦dedecms游客投稿图片字段无法上传的问题
小编接到一个微商货源网站的单子,在处理游客投稿那块的 时候遇到了一个问题:后台游客投稿设置好后,到织梦dedecms前台发布的时候,上传图片字段时候还是需要登录才可以上传,但是更令人气愤的是登录进去上传完图片,但是却选择不了上传的图片。
于是小编想到了修改一下这个字段。
发布的页面修改成如下图:
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的基本操作。
按照这种方法就可以解决织梦游客投稿图片字段无法上传的问题 。
☉本站的源码不会像其它下载站一样植入大量的广告。为了更好的用户体验以后坚持不打水印
☉本站只提供精品源码,源码在于可用,不在多!!希望在这里找到你合适的。
☉本站提供的整站程序,均带数据及演示地址。可以在任一源码详情页查看演示地址
☉本站所有资源(包括源码、模板、素材、特效等)仅供学习与参考,请勿用于商业用途。
☉如有其他问题,请加网站客服QQ(984818011)进行交流。
- 织梦dede首页列表页获取文章对应的tag标签
- 织梦dede导航栏目顶级和二级判断二级输出不同url
- 织梦dede标签array runphp静态生成乱码BUG解决方法
- 织梦dede如何禁止会员发布文章内容带超链接
- 织梦ajax跨域提交自定义表单和跨域验证码问题
- 织梦CMS MIP文章内容页图片适配百度MIP规范
- 织梦CMS时间格式实现XX秒前、XX分钟前、XX天前
- 织梦DedeCMS更新系统缓存增加清理沉余缓存的功能
- 织梦CMS让channelartlist标签支持currentstyle属性的
- 织梦dede自带编辑器替换百度ueditor编辑器
- 织梦DEDECMS整站动态化或整站静态化设置方法
- 织梦dede 模板路径templets目录都有什么?