pbotcms为轮播图片增加上传项的方法

pbotcms为轮播图片增加上传项的方法
最近,我在做一个响应性网站轮播图片调用。默认情况下,pbotcms只有一个地方可以上传图片。对于响应性调用,图片应该写在一起。那么如何操作轮播图片中的另一个上传项呢?

先看效果图

pbootcms给轮播图片再增加一个上传项的方法
 
 
先到数据库【ay_slide】如果是,在表中添加一个新的轮播图字段【picc】,新字段如下图所示:此处合作Navicat,请自行准备

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

找到路径:/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 (!');
                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');///这是添加的内容-AB模板网提供
            $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 (!');
                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 (!');
                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 (!');
                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">图片</label>
  <div class="layui-input-inline">
    <input type="text" name="pic" id="pic" required  lay-verify="required" 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"></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>

最终修改效果如下:

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

调用模板文件的方法如下:

{pboot:slide gid=* num=*}
<img src="[slide:src]">///调用原始图片
<img src="[slide:picc]">///调用新图片
{/pboot:slide}      
以上操作步骤需要每一步完成。建议在操作前备份文件,以避免操作失败。感谢您对AB模板网的支持,希望对您有所帮助。