因為使用的是v9的早期版本,後來升級的時候沒敢升級資料庫,直接使用了老的資料庫結構,造成【推薦位】新增不能使用,報告沒有thumb列。
檢視資料庫果然沒有,沒辦法要麼新增相關的列,要麼禁用上傳縮圖。
最後決定修改程式碼,而不是修改資料庫結構。
方法如下
1,進入目錄/phpcms/modules/admin找到position.php檔案,修改新增方法如下
public function add() {
if(isset($_POST['dosubmit'])) {
if(!is_array($_POST['info']) || empty($_POST['info']['name'])){
showmessage(L('operation_failure'));
}
$_POST['info']['siteid'] = intval($_POST['info']['modelid']) ? get_siteid() : 0;
$_POST['info']['listorder'] = intval($_POST['info']['listorder']);
$_POST['info']['maxnum'] = intval($_POST['info']['maxnum']);
//$_POST['info']['thumb'] = $_POST['info']['thumb']; //這行註釋掉
$insert_id = $this->db->insert($_POST['info'],true);
$this->_set_cache();
if($insert_id){
showmessage(L('operation_success'), '', '', 'add');
}
}
2,修改頁面模板,進入目錄/phpcms/modules/admin/templates 找到position_add.tpl.php,修改程式碼如下,將標紅的地方刪除或註釋掉
<tr>
<td><?php echo L('extention_name')?></td>
<td><input type="text" name="info[extention]" id="extention" class="input-text" size="20" value=""></input></td>
</tr>
<tr>
<td><?php echo L('上傳對應圖')?></td>
<td><?php echo form::images('info[thumb]', 'thumb', '', 'thumb','','30')?></td>
</tr>
然後一切就正常了.
當然如果要修改同樣正常使用按同樣方法修改/phpcms/modules/admin/templates 找到position_edit.tpl.php
public function edit() { if(isset($_POST['dosubmit'])) { $_POST['posid'] = intval($_POST['posid']); if(!is_array($_POST['info']) || empty($_POST['info']['name'])){ showmessage(L('operation_failure')); } $_POST['info']['siteid'] = intval($_POST['info']['modelid']) ? get_siteid() : 0; $_POST['info']['listorder'] = intval($_POST['info']['listorder']); $_POST['info']['maxnum'] = intval($_POST['info']['maxnum']); //$_POST['info']['thumb'] = $_POST['info']['thumb']; //這行註釋掉
$this->db->update($_POST['info'],array('posid'=>$_POST['posid'])); $this->_set_cache(); showmessage(L('operation_success'), '', '', 'edit'); }