PbootCMS留言表单集成Layui图片上传功能教程
首先在模板中引入Layui框架的核心样式与脚本文件,确保上传组件能够正常加载。
<link rel="stylesheet" href="{pboot:sitetplpath}/layui/css/layui.css?v=v2.5.4">
<script type="text/javascript" src="{pboot:sitetplpath}/layui/layui.all.js?v=v2.5.4"></script>
修改前端留言页面表单
在留言表单中添加头像上传字段,包含文本输入框、上传按钮以及预览容器。通过Layui的upload模块实现单图片上传,上传成功后自动填充图片路径并显示缩略图。
<div class="form-group">
<label for="mobile">头 像</label>
<div>
<input type="text" name="ico" id="ico" placeholder="请上传缩略图" class="layui-input">
<button type="button" class="layui-btn upload" data-des="ico">
<i class="layui-icon"></i>上传图片
</button>
<div id="ico_box"></div>
</div>
</div>
<script>
layui.use(['element','upload'], function(){
var element = layui.element;
var upload = layui.upload;
var uploadInst = upload.render({
elem: '.upload'
,url: '/index.php?p=/index/upload'
,field: 'upload'
,multiple: false
,accept: 'images'
,acceptMime: 'image/*'
,done: function(res){
var item = this.item;
layer.closeAll('loading');
if(res.code==1){
$('#ico').val(res.data[0]);
$('#ico_box').html("<img src='"+res.data[0]+"' width=80 >");
layer.msg('上传成功!');
}else{
layer.msg('上传失败:'+res.data);
}
}
,error: function(){
layer.closeAll('loading');
layer.msg('上传发生错误!');
}
});
});
</script>
添加后端上传接口
打开 apps/home/controller/IndexController.php 文件,在控制器中新增 upload 方法,调用系统上传函数处理文件并返回JSON结果。
public function upload()
{
$upload = upload('upload');
if (is_array($upload)) {
json(1, $upload);
} else {
json(0, $upload);
}
}

后台管理字段展示调整
在后台留言管理列表中,将头像字段由文本显示改为图片展示,便于管理员直观查看用户上传的头像。

安全注意事项
前端上传功能会影响网站的安全性,容易导致网站被入侵,如非必须情况不建议使用此功能。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
