pbootcms给轮播图片再增加一个上传项的修改方法

最近在做一个响应式网站轮播图片调用,pbootcms默认只有一个上传图片的地方,像响应式这种调用,图片是要写在一起的,那么我们要给轮播图片再增加一个上传项要怎么操作呢? 首先到数据库 【ay_slide】 表中新增一个轮播图字段,假如是 【picc】,新增字段如下
最近在做一个响应式网站轮播图片调用,pbootcms默认只有一个上传图片的地方,像响应式这种调用,图片是要写在一起的,那么我们要给轮播图片再增加一个上传项要怎么操作呢?

首先到数据库【ay_slide】表中新增一个轮播图字段,假如是【picc】,新增字段如下图:这里配合的是Navicat,请自行准备

找到路径:/apps/admin/controller/content/下找到SlideContrller.php文件

找到代码:// 轮播图增加,添加【picc】这个新增的数据字段名称,该文件共需要新增四处,可以对照其他字段进行添加

// 轮播图增加
    public function add()
    {
        if ($_POST) {
            // 获取数据
            $gid = post('gid', 'int');
            $pic = post('pic');
            $link = post('link');
            $title = post('title');
            $subtitle = post('subtitle');
            $sorting = post('sorting', 'int');
            
            if (! $gid) {
                $gid = $this->model->getMaxGid() + 1;
            }
            
            if (! $pic) {
                alert_back('图片不能为空!');
            }
            
            // 构建数据
            $data = array(
                'acode' => session('acode'),
                'gid' => $gid,
                'pic' => $pic,
                'link' => $link,
                'title' => $title,
                'subtitle' => $subtitle,
                'sorting' => $sorting,
                'create_user' => session('username'),
                'update_user' => session('username')
            );
            
            // 执行添加
            if ($this->model->addSlide($data)) {
                $this->log('新增轮播图成功!');
                if (! ! $backurl = get('backurl')) {
                    success('新增成功!', base64_decode($backurl));
                } else {
                    success('新增成功!', url('/admin/Slide/index'));
                }
            } else {
                $this->log('新增轮播图失败!');
                error('新增失败!', - 1);
            }
        }
    }
修改为:
// 轮播图增加
    public function add()
    {
        if ($_POST) {
            // 获取数据
            $gid = post('gid', 'int');
            $pic = post('pic');
            $picc = post('picc');//这里是增加的内容
            $link = post('link');
            $title = post('title');
            $subtitle = post('subtitle');
            $sorting = post('sorting', 'int');
            
            if (! $gid) {
                $gid = $this->model->getMaxGid() + 1;
            }
            
            if (! $pic) {
                alert_back('图片不能为空!');
            }
            
            // 构建数据
            $data = array(
                'acode' => session('acode'),
                'gid' => $gid,
                'pic' => $pic,
                'picc' => $picc,
                'link' => $link,
                'title' => $title,
                'subtitle' => $subtitle,
                'sorting' => $sorting,
                'create_user' => session('username'),
                'update_user' => session('username')
            );
            
            // 执行添加
            if ($this->model->addSlide($data)) {
                $this->log('新增轮播图成功!');
                if (! ! $backurl = get('backurl')) {
                    success('新增成功!', base64_decode($backurl));
                } else {
                    success('新增成功!', url('/admin/Slide/index'));
                }
            } else {
                $this->log('新增轮播图失败!');
                error('新增失败!', - 1);
            }
        }
    }
继续往下,我们找到//修改操作,原文代码如下:
        // 修改操作
        if ($_POST) {
            
            // 获取数据
            $gid = post('gid', 'int');
            $pic = post('pic');
            $link = post('link');
            $title = post('title');
            $subtitle = post('subtitle');
            $sorting = post('sorting', 'int');
            
            if (! $gid) {
                $gid = $this->model->getMaxGid() + 1;
            }
            
            if (! $pic) {
                alert_back('图片不能为空!');
            }
            
            // 构建数据
            $data = array(
                'gid' => $gid,
                'pic' => $pic,
                'link' => $link,
                'title' => $title,
                'subtitle' => $subtitle,
                'sorting' => $sorting,
                'update_user' => session('username')
            );
            
            // 执行添加
            if ($this->model->modSlide($id, $data)) {
                $this->log('修改轮播图' . $id . '成功!');
                if (! ! $backurl = get('backurl')) {
                    success('修改成功!', base64_decode($backurl));
                } else {
                    success('修改成功!', url('/admin/Slide/index'));
                }
            } else {
                location(- 1);
            }
        } else {
            // 调取修改内容
            $this->assign('mod', true);
            if (! $result = $this->model->getSlide($id)) {
                error('编辑的内容已经不存在!', - 1);
            }
            $this->assign('gids', $this->model->getGid());
            $this->assign('slide', $result);
            $this->display('content/slide.html');
        }
    }
直接替换为以下代码:
        // 修改操作
        if ($_POST) {
            
            // 获取数据
            $gid = post('gid', 'int');
            $pic = post('pic');
            $picc = post('picc');
            $link = post('link');
            $title = post('title');
            $subtitle = post('subtitle');
            $sorting = post('sorting', 'int');
            
            if (! $gid) {
                $gid = $this->model->getMaxGid() + 1;
            }
            
            if (! $pic) {
                alert_back('图片不能为空!');
            }
            
            // 构建数据
            $data = array(
                'gid' => $gid,
                'pic' => $pic,
                'picc' => $picc,
                'link' => $link,
                'title' => $title,
                'subtitle' => $subtitle,
                'sorting' => $sorting,
                'update_user' => session('username')
            );
            
            // 执行添加
            if ($this->model->modSlide($id, $data)) {
                $this->log('修改轮播图' . $id . '成功!');
                if (! ! $backurl = get('backurl')) {
                    success('修改成功!', base64_decode($backurl));
                } else {
                    success('修改成功!', url('/admin/Slide/index'));
                }
            } else {
                location(- 1);
            }
        } else {
            // 调取修改内容
            $this->assign('mod', true);
            if (! $result = $this->model->getSlide($id)) {
                error('编辑的内容已经不存在!', - 1);
            }
            $this->assign('gids', $this->model->getGid());
            $this->assign('slide', $result);
            $this->display('content/slide.html');
        }
    }

添加好后需要在路径:/apps/admin/view/default/content/ 下找到 slide.html 文件

然后添加此字段的上传框,如下图所示,页面共需要添加两处,新增和修改里面都需要添加哦,新增大约在66-75行,原文代码:

                <div class="layui-form-item">
                     <label class="layui-form-label">图片2</label>
                     <div class="layui-input-inline">
                     	<input type="text" name="picc" id="picc" required  lay-verify="required" placeholder="请上传图片2"  class="layui-input">
                     </div>
                     <button type="button" class="layui-btn upload" data-des="picc">
					 	 <i class="layui-icon">&#xe67c;</i>上传图片
					 </button>
					 <div id="pic_box" class="pic"></div>
                </div>
在这段代码下面新增如下代码:
                <div class="layui-form-item">
                     <label class="layui-form-label">图片2</label>
                     <div class="layui-input-inline">
                     	<input type="text" name="picc" id="picc" required  lay-verify="required" placeholder="请上传图片2"  class="layui-input">
                     </div>
                     <button type="button" class="layui-btn upload" data-des="picc">
					 	 <i class="layui-icon">&#xe67c;</i>上传图片
					 </button>
					 <div id="pic_box" class="pic"></div>
                </div>
继续往下找到如下代码:
<div class="layui-form-item">
                     <label class="layui-form-label">图片</label>
                     <div class="layui-input-inline">
                     	<input type="text" name="pic" id="pic" required  lay-verify="required" value="{$slide->pic}" placeholder="请上传图片"  class="layui-input">
                     </div>
                     <button type="button" class="layui-btn upload" data-des="pic">
					 	 <i class="layui-icon">&#xe67c;</i>上传图片
					 </button>
					 <div id="pic_box" class="pic">{if([$slide->pic])}<dl><dt><img src="{SITE_DIR}{$slide->pic}" data-url="{$slide->pic}"></dt><dd>删除</dd></dl>{/if}</div>
                </div>
在这段代码下面新增如下代码:
                <div class="layui-form-item">
                     <label class="layui-form-label">图片2</label>
                     <div class="layui-input-inline">
                     	<input type="text" name="picc" id="picc" required  lay-verify="required" value="{$slide->picc}" placeholder="请上传图片"  class="layui-input">
                     </div>
                     <button type="button" class="layui-btn upload" data-des="picc">
					 	 <i class="layui-icon">&#xe67c;</i>上传图片
					 </button>
					 <div id="pic_box" class="pic">{if([$slide->picc])}<dl><dt><img src="{SITE_DIR}{$slide->picc}" data-url="{$slide->picc}"></dt><dd>删除</dd></dl>{/if}</div>
                </div>
最终修改效果如下:

在模板文件中调用方法如下:
{pboot:slide gid=* num=*}
<img src="[slide:src]">//原本的图片调用
<img src="[slide:picc]">//新增的图片调用
{/pboot:slide}       
以上操作步骤每步都需要做,操作之前建议备份下文件以免操作失败,感谢您对跟版网支持,希望能够帮到您。
本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

我们在用pbootcms建站的时候,用到留言功能,这块目前是无法上传图片的,如果我们想上传图片要怎么操作呢? 前端部分 我们以默认的message.html留言页面为例子讲解,这个对应你自己网站的留言页面。新增一段如下代码: div class="form-group" label for="hid
PbootCMS程序如何实现自动推送网址到百度,实现方法如下: 第一步:在站点根目录新建一个PHP文件,例如:baidu.php,并复制下方代码添加到baidu.php文件中。 注意:两处需要修改的地方已经在末尾添加了注释,记得修改为自己的,然后保存。 ?phpheader('Conten
PbootCMS后台默认不带文章内容阅读量及点赞量的修改功能,为了方便增加浏览,可以通过修改代码实现。最终实现效果如下图所示: 首先打开apps/admin/controller/content/ContentController.php文件,找到 // 文章修改public function mod(){ if (! ! $submit =
有一些朋友的网站前端不需要缩略图,只需要个别文章显示缩略图,PbootCMS默认自动提取文章里的图片作为缩略图。其实可以增加一个按钮,判断下就可以。最终实现效果如下: 找到文件apps\admin\view\default\content\content.html(在代码340行及740行,添加以下
在使用pbootcms模板上传图片的时候,缩略图被自动截取了,尺寸变小缩略图没匹配到后台。 解决方案:打开/config/config.php文件,找到 // 缩略图配置 'ico' = array( 'max_width' = '2000', 'max_height' = '1000' ), 以上参数详解: max_width //为最大宽度
pbootcms如何设置在后台发布内容后不自动提取缩略图?,也就是说不让它自动提取缩略图,这个要怎么操作呢? 如果不需要提取缩略图,你只需要找到如下代码,这个代码一共有三处,其中两处位于:\apps\admin\controller\content\ContentController.php,在135和