PbootCMS給輪播圖片再增加一個(gè)上傳圖片功能
首先到數(shù)據(jù)庫(kù)【ay_slide】表中新增一個(gè)輪播圖字段,假如是【picc】,新增字段如下圖:這里用的是SQL工具,自己去下載一個(gè)
找到路徑:/apps/admin/controller/content/SlideController.php文件
找到代碼:// 輪播圖增加,添加【picc】這個(gè)新增的數(shù)據(jù)字段名稱,該文件共需要新增四處,可以對(duì)照其他字段進(jìn)行添加
// 輪播圖增加 public function add() { if ($_POST) { // 獲取數(shù)據(jù) $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('圖片不能為空!'); } // 構(gòu)建數(shù)據(jù) $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') ); // 執(zhí)行添加 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('新增失?。?#39;, - 1); } } }
修改為:
// 輪播圖增加 public function add() { if ($_POST) { // 獲取數(shù)據(jù) $gid = post('gid', 'int'); $pic = post('pic'); $picc = post('picc');//這里是增加的內(nèi)容-幸運(yùn)草科技提供 $link = post('link'); $title = post('title'); $subtitle = post('subtitle'); $sorting = post('sorting', 'int'); if (! $gid) { $gid = $this->model->getMaxGid() + 1; } if (! $pic) { alert_back('圖片不能為空!'); } // 構(gòu)建數(shù)據(jù) $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') ); // 執(zhí)行添加 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('新增失?。?#39;, - 1); } } }
繼續(xù)往下,我們找到//修改操作,原文代碼如下:
// 修改操作 if ($_POST) { // 獲取數(shù)據(jù) $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('圖片不能為空!'); } // 構(gòu)建數(shù)據(jù) $data = array( 'gid' => $gid, 'pic' => $pic, 'link' => $link, 'title' => $title, 'subtitle' => $subtitle, 'sorting' => $sorting, 'update_user' => session('username') ); // 執(zhí)行添加 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 { // 調(diào)取修改內(nèi)容 $this->assign('mod', true); if (! $result = $this->model->getSlide($id)) { error('編輯的內(nèi)容已經(jīng)不存在!', - 1); } $this->assign('gids', $this->model->getGid()); $this->assign('slide', $result); $this->display('content/slide.html'); } }
直接替換為以下代碼:
// 修改操作 if ($_POST) { // 獲取數(shù)據(jù) $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('圖片不能為空!'); } // 構(gòu)建數(shù)據(jù) $data = array( 'gid' => $gid, 'pic' => $pic, 'picc' => $picc, 'link' => $link, 'title' => $title, 'subtitle' => $subtitle, 'sorting' => $sorting, 'update_user' => session('username') ); // 執(zhí)行添加 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 { // 調(diào)取修改內(nèi)容 $this->assign('mod', true); if (! $result = $this->model->getSlide($id)) { error('編輯的內(nèi)容已經(jīng)不存在!', - 1); } $this->assign('gids', $this->model->getGid()); $this->assign('slide', $result); $this->display('content/slide.html'); } }
添加好后需要在路徑:/apps/admin/view/default/content/ 下找到 slide.html 文件
然后添加此字段的上傳框,如下圖所示,頁(yè)面共需要添加兩處,新增和修改里面都需要添加哦,新增大約在66-90行,原文代碼:
<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="請(qǐng)上傳圖片" class="layui-input"> </div> <button type="button" class="layui-btn upload" data-des="pic"> <i class="layui-icon"></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="請(qǐng)上傳圖片2" class="layui-input"> </div> <button type="button" class="layui-btn upload" data-des="picc"> <i class="layui-icon"></i>上傳圖片 </button> <!-- 關(guān)鍵修改:id改為picc_box --> <div id="picc_box" class="picc"></div> </div>
繼續(xù)往下找到如下代碼:
<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="請(qǐng)上傳圖片" class="layui-input"> </div> <button type="button" class="layui-btn upload" data-des="pic"> <i class="layui-icon"></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="請(qǐng)上傳圖片" class="layui-input"> </div> <button type="button" class="layui-btn upload" data-des="picc"> <i class="layui-icon"></i>上傳圖片 </button> <!-- 關(guān)鍵修改:id改為picc_box,類名保持為pic --> <div id="picc_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>
最終修改效果如下: