自定义商品页和自定义品牌页相冲突怎么解决?

2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家

不知道怎么的只能自定义他们其中的一个,大家看一下我的代码,这些代码都是网上弄的。看应该怎么解决


MySQL server error report:Array ( [0] => Array ( [message] => MySQL Query Error ) [1] => Array ( [sql] => SELECT cat_name, cat_title, keywords, cat_desc, style, grade, filter_attr, parent_id FROM `root`.`ecs_category` WHERE cat_id = '1' ) [2] => Array ( [error] => Unknown column 'cat_title' in 'field list' ) [3] => Array ( [errno] => 1054 ) )

回答:
自定义 品牌页代码

1)、
第一步,修改数据库结构,在 ecs_brand 表里增加一个新字段 page_title
依次进入 后台 》数据库管理 》SQL查询,输入下面的SQL语句,并执行。

ALTER TABLE `ecs_brand` ADD `page_title` VARCHAR( 255 ) NOT NULL

注意:我的数据库是用的默认前缀,请针对你的数据库前缀,自行修改。

2)、
第二步,修改模板文件 /admin/templates/brand_info.htm



<tr>
<td class="label">{$lang.sort_order}</td>
<td><input type="text" name="sort_order" maxlength="40" size="15" value="{$brand.sort_order}" /></td>
</tr>


下面增加




<tr>
<td class="label">自定义TITLE:</td>
<td><input type="text" name="page_title"size="60" value="{$brand.page_title}" /></td>
</tr>

3)、

修改 /admin/brand.php 文件

找到(大概在88行左右)


$sql = "INSERT INTO ".$ecs->table('brand')."(brand_name, site_url, brand_desc, brand_logo, is_show, sort_order) ".
"VALUES ('$_POST[brand_name]', '$site_url', '$_POST[brand_desc]', '$img_name', '$is_show', '$_POST[sort_order]')";
$db->query($sql);


将它修改为


$sql = "INSERT INTO ".$ecs->table('brand')."(brand_name, site_url, brand_desc, brand_logo, is_show, sort_order,page_title) ".
"VALUES ('$_POST[brand_name]', '$site_url', '$_POST[brand_desc]', '$img_name', '$is_show', '$_POST[sort_order]'),'$_post[page_title]'";
$db->query($sql);



继续找到(大概在113行左右)

$sql = "SELECT brand_id, brand_name, site_url, brand_logo, brand_desc, brand_logo, is_show, sort_order ".
"FROM " .$ecs->table('brand'). " WHERE brand_id='$_REQUEST[id]'";
$brand = $db->GetRow($sql);

将之修改为

$sql = "SELECT brand_id, brand_name, site_url, brand_logo, brand_desc, brand_logo, is_show, sort_order,page_title ".
"FROM " .$ecs->table('brand'). " WHERE brand_id='$_REQUEST[id]'";
$brand = $db->GetRow($sql);




继续向下找到
/* 处理图片 */
$img_name = basename($image->upload_image($_FILES['brand_logo'],'brandlogo'));
$param = "brand_name = '$_POST[brand_name]',site_url='$site_url', brand_desc='$_POST[brand_desc]', is_show='$is_show', sort_order='$_POST[sort_order]' ";

将它修改成下面代码
/* 处理图片 */
$img_name = basename($image->upload_image($_FILES['brand_logo'],'brandlogo'));
$param = "brand_name = '$_POST[brand_name]',site_url='$site_url', brand_desc='$_POST[brand_desc]', is_show='$is_show', sort_order='$_POST[sort_order]',page_title='$_POST[page_title]' ";


4)、
修改前台程序文件 /brand.php


$smarty->assign('page_title',$position['title']);// 页面标题
修改为 $smarty->assign('page_title',htmlspecialchars($brand_info['page_title']));// 页面标题

自定义 商品页标题

方法/步骤1、修改 admin/templates/category_info.htm



<div><tr></div><div><td class="label">{$lang.keywords}:</td></div><div><td><input type="text" name="keywords" value='{$cat_info.keywords}' size="50"></div><div></td></div><div></tr></div>


上面增加


<div><tr></div><div><td class="label">自定义TITLE:</td></div><div><td></div><div><input type="text" name="cat_title" value='{$cat_info.cat_title}' size="50"></div><div></td></div><div></tr></div>

2、打开 admin/category.php

$cat['cat_desc']= !empty($_POST['cat_desc'])? $_POST['cat_desc']: '';


一共能找到两处,在每处的下面都要新增加一行代码


$cat['cat_title']= !empty($_POST['cat_title'])? $_POST['cat_title']: '';

到此后台功能就完成了







3、修改前台程序文件 category.php



return $GLOBALS['db']->getRow('SELECT cat_name, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ' . $GLOBALS['ecs']->table('category') .


修改为


return $GLOBALS['db']->getRow('SELECT cat_name, cat_title, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ' . $GLOBALS['ecs']->table('category') .

继续将


$smarty->assign('page_title', $position['title']);


修改为


$smarty->assign('page_title', $cat['cat_title']);

求解决呀,不然太纳闷了。