table('goods')."wheregoods_" />

ecshop详情页获得当前商品所属分类ID和调用同分类下的商品

ecshop详情页获得当前商品所属分类ID和调用同分类下的商品
ecshop详情页获得当前商品所属分类ID和调用同分类下的商品

Ecshop详情页获得当前商品所属分类ID和调用同分类下的商品

ECSHOP开发中心(https://www.360docs.net/doc/bc1459505.html,)

在根目录goods.php中找到

$smarty->assign('goods_rank', get_goods_rank($goods_id));

在这段下面加入

/*获得当前栏目id*/

$sql= "select cat_id from ".$GLOBALS['ecs']->table('goods')."where goods_id

='".$goods_id."'";

$thiscat_id = $GLOBALS['db']->getOne($sql);

/*获得当前栏目id end*/

栏目ID有了,接下来只需要根据ID取得商品就好了,打开includes/lib_goods.php在最下面加入,其实这个跟获取指定栏目下的商品是一样的代码,只不过这个ID是根据产品获取的,如果我们把id写死那就是指定分类下的商品了。代码如下:

/**

* 获得同分类下的商品

*

* @access public

* @param integer $cat_id 分类ID

* @param integer $num 数量

* @param string $from 来自web/wap的调用

* @param string $order_rule 指定商品排序规则

* @return array

*/

function samecat_goods($cat_id = '', $num = '')

{

$sql = 'Select g.goods_id, g.cat_id,c.parent_id, g.goods_name, g.goods_name_style, g.market_price, g.shop_price AS org_price, g.promote_price, ' .

"IFNULL(https://www.360docs.net/doc/bc1459505.html,er_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ". "promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, goods_img, " . "g.is_best, g.is_new, g.is_hot, g.is_promote " .

'FROM ' . $GLOBALS['ecs']->table('goods') . ' AS g ' .

'LEFT JOIN ' . $GLOBALS['ecs']->table('category') . ' AS c ON c.cat_id = g.cat_id ' . "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".

"ON mp.goods_id = g.goods_id AND https://www.360docs.net/doc/bc1459505.html,er_rank = '$_SESSION[user_rank]' ". "Where g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ".

$sql .= " AND (c.parent_id =" . $cat_id. " OR g.cat_id = " . $cat_id ." OR g.cat_id ".

db_create_in(array_unique(array_merge(array($cat_id), array_keys(cat_list($cat_id, 0, false))))) .")";

$sql .= " ORDER BY rand()";

$sql .= " LIMIT $num";

$res = $GLOBALS['db']->getAll($sql);

$goods = array();

foreach ($res AS $idx => $row)

{

$goods[$idx]['id'] = $row['article_id'];

$goods[$idx]['id'] = $row['goods_id'];

$goods[$idx]['name'] = $row['goods_name'];

$goods[$idx]['brief'] = $row['goods_brief'];

$goods[$idx]['brand_name'] = $row['brand_name'];

$goods[$idx]['goods_style_name'] =

add_style($row['goods_name'],$row['goods_name_style']);

$goods[$idx]['short_name'] = $GLOBALS['_CFG']['goods_name_length'] > 0 ?

sub_str($row['goods_name'], $GLOBALS['_CFG']['goods_name_length']) :

$row['goods_name'];

$goods[$idx]['goods_name'] = $row['goods_name'];

$goods[$idx]['short_style_name'] =

add_style($goods[$idx]['short_name'],$row['goods_name_style']);

$goods[$idx]['market_price'] = price_format($row['market_price']);

$goods[$idx]['shop_price'] = price_format($row['shop_price']);

$goods[$idx]['thumb'] = empty($row['goods_thumb']) ? $GLOBALS['_CFG']['no_picture'] : $row['goods_thumb'];

$goods[$idx]['goods_img'] = empty($row['goods_img']) ?

$GLOBALS['_CFG']['no_picture'] : $row['goods_img'];

$goods[$idx]['url'] = build_uri('goods', array('gid' => $row['goods_id']),

$row['goods_name']);

}

return $goods;

}

值得注意的是,代码中有这么一句$sql .= " ORDER BY rand()";这句是让商品随机排序,或者说是随机调用了几个商品,因为我们不想让同分类商品下面调出来的猜你还喜欢的商品都是一样的。如果你不想这样就把这句去掉就可以了。

好了,获取代码都已经写好了,接下来就是把这段代码引用到goods.php中,方法是

在刚才获取当前栏目ID那段下面加入下面这句

$smarty->assign('samecat_goods', samecat_goods($thiscat_id,8));

$thiscat_id就是我们刚才写的获取的当前商品所属分类的id了,如果你把他换成固定值,比如10,那就是获得指定分类id为10的分类下面的商品了。如果你想在首页用那就把这一句写到index.php中。8为调用数量

【ECSHOP开发中心】

二次开发基础知识:Ecshop

基础知识 一、文件夹功能说明 1、根目录:前台程序文件 2、admin:后台程序文件夹 –根目录:后台程序文件*.php文件 –help\zh_cn:各功能的帮助文件*.xml文件 –images:后台页面用图片 –includes:后台公用文件和函数 –js:后台用js脚本 –styles:后台用样式表 –templates:后台页面模板*.htm文件 3、api:调用API的系统公用函数 4、cert:存放证书的文件夹 5、data:数据连接设置等,包括各种广告的上传图片等 –afficheimg:首页flash广告图片 –brandlogo:品牌logo 6、images:上传商品图片文件夹,按日期分目录 –200902:按月份划分商品图片 –upload:上传文件夹,包括file、flash、image和media 7、includes:前台公用文件和函数 –codetable:语言对应的代码表 –fckeditor:开源html文本编辑器 –modules\convert:shopex转换文件 –modules\cron:如自动上下架、ip删除等函数 –modules\integrates:整合各种插件和函数基础类 –modules\payment:各种支付接口插件 –modules\shipping:各种送货方式插件 8、install:系统安装文件夹,用后请删除 9、js:前台用js脚本 –calendar:日历控件 10、languages:语言文件 –zh_cn:简体中文语言文件,存储简体中文下使用的函数变量等–zh_tw:繁体中文语言文件,存储繁体中文下使用的函数变量等 11、temp:存放临时缓存等文件 12、themes:模板文件夹,可以随意拷贝模板样式 13、wap:手机浏览程序 –includes;公用文件和函数 –templates:页面模板*.wml文件 14、widget:搜狐博客小插件 二、主要文件功能说明 模板文件说明 style.css –模板所使用样式表 activity.dwt –活动列表 article.dwt –文章内容页

ecshop目录结构图

ecshop连接数据库的文件是哪个

ECShop2.5.1_Beta upload 的目录 ┣activity.php 活动列表 ┣affiche.php 广告处理文件 ┣affiliate.php 生成商品列表 ┣article.php 文章内容 ┣article_cat.php文章分类 ┣auction.php 拍卖前台文件 ┣brand.php 品牌列表 ┣captcha.php 生成验证码 ┣catalog.php 列出所以分类及品牌 ┣category.php 商品分类 ┣comment.php 提交用户评论 ┣compare.php 商品比较程序 ┣cycle_image.php 轮播图片程序 ┣feed.php RSS Feed 生成程序 ┣flow.php 购物流程 ┣gallery.php 商品相册 ┣goods.php 商品详情 ┣goods_script.php 生成商品列表 ┣group_buy.php 团购商品前台文件 ┣index.php 首页文件 ┣myship.php 支付配送DEMO ┣pick_out.php 选购中心 ┣receive.php 处理收回确认的页面 ┣region.php 地区切换程序 ┣respond.php 支付响应页面 ┣robots.txt ┣search.php 搜索程序 ┣sitemaps.php google sitemap 文件 ┣snatch.php 夺宝奇兵前台页面 ┣tag_cloud.php 标签云 ┣topic.php 专题前台 ┣user.php 会员中心 ┣vote.php 调查程序 ┣wholesale.php 批发前台文件 ┣admin文件夹 ┃┣account_log.php 管理中心帐户变动记录 ┃┣admin_logs.php 记录管理员操作日志 ┃┣ads.php 广告管理程序 ┃┣adsense.php 站外JS投放的统计程序 ┃┣ad_position.php广告位置管理程序 ┃┣affiliate.php 程序说明

05ecshop项目概述

回顾 PDO:PHP数据对象,作为了一个数据抽象层来负责向下连接各种指定的数据库。 1.加载PDO扩展 2.创建PDO对象(连接数据库):new PDO($dsn,$user,$pass) 3.组织SQL并发送 a)PDO::exec:没有数据(结果集返回),返回受影响的行数 b)PDOStatement PDO::query:有结果集,返回结果集对象 4.处理返回结果 a)结果集记录数:PDOStatement::rowCount,columnCount b)取出结果集:fetch(PDO::FETCH_BOTH,FETCH_ASSOC,FETCH_NUM),fetchAll, fetchColumn,fetchObject 5.关闭PDO(unset(PDO对象)) 预处理 1.发送预处理:PDOStatement PDO::prepare 2.准备执行数据 a)传入一个参数数据:PDOStatement::execute($array) b)在执行前绑定变量:bindParam,bindValue,使用PDOStatement::execute PDO事务处理 PDO::beginTransaction:开启事务 PDO::commit:确认提交 PDO::rollback:回滚 PDO异常处理 1.设置错误处理模式为异常模式: PDO::setAttribute(PDO::ATTR_ERRORMODE,PDO::ERRMODE_EXCEPTION) 2.指定异常语句库去捕捉异常 try{//可能出现错误的语句}catch(PDOException $e){//抓取错误并处理$e->getTrace()} 反射:Reflection 将一个类的内部的结构给反映出来:ReflectionClass 获取常量:getConstants 获取属性:getProperties 获取方法:getMethods

ECSHOP首页显示ecshop积分商城里的商品方法

ECSHOP首页显示ecshop积分商城里的商品方法 ECSHOP教程网:https://www.360docs.net/doc/bc1459505.html,/ecshop-ercikaifa/272.htm 下面就以ECSHOP官方默认模板为基础,给大家提供一个完整的解决方案。 (本教程由ECSHOP120(https://www.360docs.net/doc/bc1459505.html,)提供,如要转载,请注明出处) 1)、 首先打开index.php 文件 在最末尾增加下面函数,注意千万不要写到“?>”的外面去,要加在“?>”的前面。 /** * 获得积分商城热门商品 * * @param int $limit 列出条数 * @param int $ishot 是否只显示热销 * @return array */ function index_get_exchange($limit=3,$ishot=0) { /* 获得热门积分商品列表*/ $sql_ishot=$ishot ? " AND eg.is_hot=1 " : ""; $sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, eg.exchange_integral, ' . ' g.goods_type,g.goods_brief, g.goods_thumb, g.goods_img, eg.is_hot ' . ECSHOP二次开发https://www.360docs.net/doc/bc1459505.html, ' FROM ' . $GLOBALS['ecs']->table('exchange_goods') . ' AS eg LEFT JOIN ' . $GLOBALS['ecs']->table('goods') . ' AS g ON g.goods_id = eg.goods_id ' . ' WHERE eg.is_exchange = 1 AND g.is_delete = 0 '. $sql_ishot .' limit '.$limit; $res = $GLOBALS['db']->getAll($sql); $arr = array(); foreach($res AS $idx => $row) { $arr[$idx]['name'] = $row['goods_name']; $arr[$idx]['goods_brief'] = $row['goods_brief']; $arr[$idx]['goods_style_name'] = add_style($row['goods_name'],$row['goods_name_style']); $arr[$idx]['exchange_integral'] = $row['exchange_integral']; $arr[$idx]['type'] = $row['goods_type']; $arr[$idx]['goods_thumb'] = get_image_path($row['goods_id'], $row['goods_thumb'], true); 转载请注明:文章转载自ECSHOP教程网https://www.360docs.net/doc/bc1459505.html,

ECSHOP编码命名规范

ECSHOP 编码规范 1.编辑器设定 1.1. 缩进 所有的缩进使用空格取代Tab制表符。PHP文件采用4个空格的缩进,HTML文件以及HTML文件中嵌入的Javascript代码采用2个空格的缩进;单独的Javascript以及CSS文件采用4个空格的缩进。 1.2. 字符编码 所有PHP、HTML文件均保存为No Bom UTF-8的字符编码。 变量名应当全部小写,并且词语之间以单个下划线分隔。 例如:$current_user 是正确的,但是$currentuser 和$CurrentUser 就不正确。 名称应当是描述性的,并且简明。我们自然不希望使用冗长的句子作为变量名,但是多输入几个字符总好于疑惑于某个变量到底是干什么用的。 1.3. 循环计数器 允许使用一个单字符变量名的唯一情形是当它作为一个循环计数器的时候。在这种情况下,外层循环的计数器应当始终是$i。如果有一个循环处于这个循环的内部,它的计数器应当是$j,进而是$k,等等。如果循环的计数器是一个已经存在并且名字有意义的变量,本规范并不适用。 例如: for ($i = 0; $i < $outer_size; $i++) { for ($j = 0; $j < $inner_size; $j++) { foo($i, $j); } }

1.4. 函数名称 函数也应该描述性地命名。这里我们并非在用C 编程,我们不希望写出诸如“stristr()”此类的函数来。同上,使用单词间用单下划线分隔的小写名称。函数名称中某处最好有一个动词。较好的函数名称如print_login_status(),get_user_data(),等等。 1.5. 函数参数 参数遵循和变量名字相同的约定。我们不希望一堆这样的函数:do_stuff($a, $b, $c)。在大部分情况下,我们希望仅仅看看函数的声明,就知道怎样使用它。 1.6. 类的名称 类的名称首先必须是一个有意义的英文单词或者词组。同时在书写格式上为了使类名和函数、变量有一个区别,我们要求类的名称全小写的写法,并且加上cls_作为前缀。 例如: /* 错误的写法 * class image_handle {} class imagehandle {} class imageHandle {} /* 正确的写法 * class cls_imagehandle {} 1.7. 总结 这里的基本哲学是不要为了偷懒而伤害了代码的清晰。但是,必须由一些常识来掌握这种平衡;例如,print_login_status_for_a_given_user() 做得就过火了——这个函数命名为print_user_login_status() 更好些,或只是print_login_status()。 2.代码布局 这里是一个头部的模板,所有的PHP文件的开始都必须包含下面的内容: /** * ECSHOP 升级程序之控制器 * ================================================================= =========== * 版权所有 (C) 2005-2007 康盛创想(北京)科技有限公司,并保留所有权利。 * 网站地址: https://www.360docs.net/doc/bc1459505.html,

ecshop函数大全

所有函数功能说明: lib_time.php gmtime() P: 获得当前格林威治时间的时间戳/$0 server_timezone() P: 获得服务器的时区/$0 local_mktime($hour = NULL , $minute= NULL, $second = NULL, $month = NULL, $day = NULL, $year = NULL) P: 生成一个用户自定义时区日期的GMT时间戳 local_date($format, $time = NULL) P: 将GMT时间戳格式化为用户自定义时区日期 gmstr2time($str) P: 转换字符串形式的时间表达式为GMT时间戳 local_strtotime($str) P: 将一个用户自定义时区的日期转为GMT时间戳 local_gettime($timestamp = NULL) P: 获得用户所在时区指定的时间戳 local_getdate($timestamp = NULL) P: 获得用户所在时区指定的日期和时间信息

lib_base.php sub_str($str, $length = 0, $append = true) P: 截取UTF-8编码下字符串的函数 real_ip() P: 获得用户的真实IP地址 str_len($str) P: 计算字符串的长度(汉字按照两个字符计算) get_crlf() P: 获得用户操作系统的换行符 send_mail($name, $email, $subject, $content, $type = 0, $notification=false) P: 邮件发送 gd_version() P: 获得服务器上的GD 版本 file_get_contents($file) P: 如果系统不存在file_get_contents函数则声明该函数 file_put_contents($file, $data, $flags = ”) P: 如果系统不存在file_put_contents函数则声明该函数 floatval($n) P: 如果系统不存在floatval 函数则声明该函数 file_mode_info($file_path) P: 文件或目录权限检查函数 log_write($arg, $fi le = ”, $line = ”) P: 写入日志内容 make_dir($folder) P: 检查目标文件夹是否存在,如果不存在则自动创建该目录 gzip_enabled() P: 获得系统是否启用了gzip addslashes_deep($value) P: 递归方式的对变量中的特殊字符进行转义

ECSHOP各文件夹功能说明

ECSHOP各文件夹功能说明 1、根目录:前台程序文件 2、admin:后台程序文件夹 --根目录:后台程序文件*.php文件 --help\zh_cn:各功能的帮助文件*.xml文件 --images:后台页面用图片 --includes:后台公用文件和函数 --js:后台用js脚本 --styles:后台用样式表 --templates:后台页面模板*.htm文件 3、api:调用API的系统公用函数 4、cert:存放证书的文件夹 5、data:数据连接设置等,包括各种广告的上传图片等 --afficheimg:首页flash广告图片 --brandlogo:品牌logo 6、images:上传商品图片文件夹,按日期分目录 --200902:按月份划分商品图片 --upload:上传文件夹,包括file、flash、image和media 7、includes:前台公用文件和函数 --codetable:语言对应的代码表 --fckeditor:开源html文本编辑器 --modules\convert:shopex转换文件 --modules\cron:如自动上下架、ip删除等函数 --modules\integrates:整合各种插件和函数基础类 --modules\payment:各种支付接口插件 --modules\shipping:各种送货方式插件 8、install:系统安装文件夹,用后请删除 9、js:前台用js脚本 --calendar:日历控件 10、languages:语言文件 --zh_cn:简体中文语言文件,存储简体中文下使用的函数变量等--zh_tw:繁体中文语言文件,存储繁体中文下使用的函数变量等 11、temp:存放临时缓存等文件 12、themes:模板文件夹,可以随意拷贝模板样式 13、wap:手机浏览程序

ECshop 所有系统通用 多货币解决方案

ECshop 所有系统通用 多货币解决方案 1、首先在我们的后台网店设置里要添加汇率转换的功能,如何添加网店功能自己摸索一下,你要把添加的功能 插入表里。如图: 我们的汇率都是和美元进行转换的。 2、开始前台实现:首先我们在首页加上多语言的链接如图: 我们看下他的url ?View Code HTML 10 11 12 13 14 15 16

这个{$url_head} 我是重新建了一个文件 conn.php 放到首页 每个文件调用 //路径处理 $url_this = "[url=http://]http://".$_SERVER[/url] ['HTTP_HOST'].$_SERVER['PHP_SELF']."?id=".$_GET['id']; $smarty->assign("url_head",$url_this); 3、我们发现都是在每个页面后面传了一次get 值 那么在那接这些get 值呢 我们肯定要找每个页面的共同文件 不难想到init.php 我在init.php 的最后加入

ecshop错误大全

ecshop错误大全 概要:本文针对于对ecshop 接触时间不久的同事制作 Maximum execution time of 30 seconds exceeded(30秒运行超时的错误。) 提示解答: 修改php执行文件 加上 set_time_limit(0); ?> “0”为永不过时,也可设置为其他时间。 二.安装Ecshop首页出现报错常见的问题解决办法(在网上看到整理的) 安装Ecshop首页出现报错:Only variables should be passed by referen 最近想安装一个ECSHOP商城上去,老是报错,出现下面这就话: Strict Standards: Only variables should be passed by reference in D:\**\includes\cls_template.php on line 406 第406行:$tag_sel = array_shift(explode(' ', $tag)); 解决办法 1 5.3以上版本的问题,应该也和配置有关只要406行把这一句拆成两句就没有问题了 $tag_sel = array_shift(explode(' ', $tag)); 改成: $tag_arr = explode(' ', $tag); $tag_sel = array_shift($tag_arr); (实验过,绝对可行)因为array_shift的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值解决办法修改完了要记得清理缓存。 2 :或则如果这样配置的话:error_reporting = E_ALL | E_STRICT 估计也可(未测试过,实验中……) 修改完上面这个问题之后,可能还会出现下面这个问题: Strict Standards: Non-static method cls_image::gd_version() should not be called statically in D:\**XX\ecshopshi\includes\lib_main.php on line 1316 经过查询"includes\lib_main.php"文件的1316行发现,还是同样的问题: //$ext = end(explode('.', $tmp)); 我们把上面这句拆分为下面这三句: $ext = end(); $ar = explode('.', $tmp); $ext = end($ar); 就正常了(亲自测试过的,没问题) $tmp = basename($tmp,".$ext"); 如果主机的GD库不存在或者版本不同还有可能出现下面这句错误提示: Strict Standards: Non-static method cls_image::gd_version() should not be called statically in D:\**X\includes\lib_base.php on line 346 直接找到“includes\lib_base.php”文件的346行左右,将这句:

ecshop解决方案

ecshop,解决方案 篇一:ecshop开发-多货币解决方案 多货币解决方案 要在后台清除缓存才行 1.在数据库里的表ecs_shop_config插入 INSERT INTO `ecs_shop_config` ( `id` , `parent_id` , `code` , `type` , `store_range` , `store_dir` , `value` , `sort_order` ) VALUES ( NULL , '1', 'rate', 'text', '', '', '1,,,,', '1' ),

NULL , '1', 'ybprice_format', 'text', '', '', '&%s', '1' ),( NULL , '1', 'aprice_format', 'text', '', '', 'EUR%s', '1' ),( NULL , '1', 'cprice_format', 'text', '', '', '¥%s', '1' ),( NULL , '1', 'aoprice_format', 'text', '', '', 'AU%s', '1' ); 2.在/languages/zh_cn/admin/shop_下添加 $_LANG['cfg_name']['rate'] = '货币汇率'; $_LANG['cfg_name']['ybprice_format'] = '英镑格式'; $_LANG['cfg_name']['aprice_format'] = '欧元格式

$_LANG['cfg_name']['cprice_format'] = '人民币格式'; $_LANG['cfg_name']['aoprice_format'] = '澳元格式'; 如图 并且添加下面的帮助信息 $_LANG['cfg_desc']['rate'] = '输入规则按照和美元的汇率进行出入 Us,EURP,BriishPound,China,Austriliar'; $_LANG['cfg_desc']['ybprice_format'] = '显示英镑格式,%s将被替换替换为相应的价格。'; $_LANG['cfg_desc']['aprice_format'] = '显示欧元格式,%s将被替换替换为相应的价格。'; $_LANG['cfg_desc']['cprice_format'] = '显示人民币格式,%s将被替换替换为相应的价格。'; $_LANG['cfg_desc']['aoprice_format'] = '显示澳元格式,%s将被替换替换为相应的价格。 ';

Ecshop去掉 power by ecshop的方法

Ecshop去掉power by ecshop的方法 在做ecshop的时候,碰到了版权问题。具体怎样解决?如何去掉Powered by Ecshop 2.7.0 ? 1、去掉标题上Powered by ECShop的字样方法如下: 打开根目录下的includes/lib_main.php文件,找到 $page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop'; 将其改为 $page_title = $GLOBALS['_CFG']['shop_title']; 或改为 $page_title = $GLOBALS['_CFG']['shop_title']. ' - ' . '任何你喜欢的文字'; 2、修改底部”Powered by Ecshop 2.x.x” ecshop根目录/themes/当前模板名/library/page_footer.lbi 找到如下代码: {insert name=’query_info’} Powered by

ECShop {$ecs_version} 将颜色标记部分替换为自己内容.其中蓝色部分为版本信息。 3、修改底部”Powered by Ecshop 2.7.0″ ecshop根目录/themes/当前模板名/library/page_footer.lbi 找到如下代码: 只要把显示版权的代码 {foreach from=$lang.p_y item=pv}{$pv}{/foreach} {$licensed} 去掉 4、页面中随机跳出(或刷新时跳出)Powered by ECShop的问题. 打开根目录下的js/common.js 文件 在这个文件里的(删除这个随机函数) onload = function() { var link_arr = document.getElementsByTagName_r(String.fromCharCod e(65)); var link_str; var link_text; var regg cc; var rmd rmd_s rmd_e link_eorr = 0;

ecshop二次开发手册基础教程

ecshop二次开发手册基础教程 【基本熟悉】 前言:ECSHOP是一套完整的网络商店解决方案,包括前台的商品展示、购物流程和强大易用的后台管理。由于ecshop简单易用,使用者几乎可以在3几分钟简单的设置一下就可以拥有一个网上商店系统,所以很多的B2C站点都选择了使用ECShop网上商店系统,但是有时候我们需要做一些ecshop本来没有的功能或者前端展示,这时候就需要我们自己去进行对ecshop的二次开发了。 一、ecshop系统功能二次开发 ecshop的代码结构非常易懂,只有有一点php基础都可以在原有的程序基础上进行修改,或功能插件的开发。 ecshop中的一些公用函数都会放在includes文件夹里,而这些公用函数几乎我们都可以用来参照一下就能轻松做出我们想要的其他功能了。 我们要对ecshop进行二次开发,简单来说其实就是对数据库的读写操作,所以只要我们读懂ecshop的数据库操作类,接下来的实现就很轻松了。 ecshop的数据库操作类是很强大的,一些常用的函数如下: 1.获取单条记录 $GLOBALS['db']->getRow($sql); 2.获取单一字段 $GLOBALS['db']->getOne($sql); 例如查询产品总数: echo $GLOBALS['db']->getOne(…SELECT COUNT(*) FROM … . $GLOBALS['ecs']->table(…goods?) ; 3.获取所有记录 $GLOBALS['db']->getAll($sql); 4.执行sql语句 $GLOBALS['db']->query($sql); //执行删除(DELETE),插入(INSERT),更新(UPDATE)等操作可用此方法 5.把数组元素插入数据库 $parent['goods_number'] = ?1′; $parent['parent_id'] = 0; $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table(…cart?), $parent, …INSERT?); 基于此基础上就能轻松进行ecshop二次开发了。 二、ecshop前端模板的二次开发 ecshop有强大的模版机制,ECSHOP 结合Dreamweaver实现了一套模版机制,改动模版不再需要上传,而是在后台稍稍动动手设置一下就可以了。 ecshop采用smarty模板技术,Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。 在php文件中使用assign方法把php变量传值给模板文件,例如: $smarty->assign(…action?, $action);

ECshop 教程

ecshop首页调用文章分类思路及方法 最近群里朋友问ecshop首页调用分类文章怎么加的,写篇文章来说下。 在ecshop论坛上有朋友说的方法之前自己试过,没有成功。 现在介绍一种成功的方法,适用各种模板。修改ecshop不要注重技巧,注重一个思路。 ecshop模板一般分为三栏或者两栏,两栏是left和right,三栏的left,center,right之类的。 现在以两栏的为例,现在一个思路就是在你想调用文章的地方加一个可编辑区域,可编辑区域在后台模 板设置里是可以设置的,然后在后台把文章调用在这个可编辑区域里就是了。明白了原理就可以动手了。在模板index.dwt里找到右边模块结束的地方,也就是, 在之后加上 ,其中“文章区域 ”这个名字是可以修改的,和你在后台看到的名字是一致的。 然后修改模板里的库文件cat_articles.lbi,替换成下面的代码

vbs函数大全

网易 新闻微博邮箱相册阅读有道摄影爱拍优惠券云笔记闪电邮手机邮印像派网易识字 更多 博客 手机博客博客搬家博客VIP服务 LiveWriter写博word写博邮件写博短信写博 群博客博客油菜地博客话题博客热点博客圈子找朋友 发现 小组 风格 网易真人搭配社区iStyle 下载最文艺的手机博客APP> 下载最文艺的手机博客APP> 创建博客登录 加关注 显示下一条| 关闭 温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》| 关闭 K8拉登哥哥's Blog K8搞基大队[K8team] 信息安全网络安全0day漏洞渗透测试 导航 首页 日志 相册 关于我 日志 拉登哥哥 K8搞基大队队长专注于被妞泡 加博友关注她 被推荐日志 最新日志 [K8team]Ecshop 360支付宝插 [原创]BAT多行代码转一行代 [骗子]最近在国外黑客论坛看

[工具]GetPwd_K8一键获取系 [工具]K8截图工具V1.0 [工具]NV显卡漏洞提权工具N 该作者的其他文章 博主推荐 随机阅读 刘思敏:携程推出海外酒店预订新平台艺龙去哪儿网或将跟进 《夜话港乐》——32.林夕:三千首歌曲的快乐与哀愁 在我们中国悲哀的只有律师吗? (原创)美国德州女教师,与5名男学生群交乱性,被判5年监牢! 县级医院靠什么突围 广州可不可以建美式社区公园? 首页推荐 女性性器官标准尺寸(图) 一届春晚43张走后门条子 刘海粟:给江青画'裸画' 水浒传好汉为何都吃牛肉 刘忠良:两会后房价暴跌 老北京冬天的'两白一黑' 更多>> C# beep 演奏两只老虎乐曲代码[K.8] 愚人节整人软件大全下载 vbs函数大全收藏 2011-03-29 18:45:42| 分类:脚本编程| 标签:vbs |字号大中小订阅Abs 函数返回数的绝对值。 And 运算符执行两个表达式的逻辑连接。 Array 函数返回含一数组的变体。 Asc 函数返回字符串首字母的ANSI 字符代码。 赋值运算符(=) 给变量或属性赋值。 Atn 函数返回数的反正切值。 调用语句将控制移交Sub 或Function 过程。 CBool 函数返回已被转换为Boolean 子类型的变体的表达式。CByte 函数返回已被转换为字节子类型的变体的表达式。 CCur 函数返回已被转换为货币子类型的变体的表达式。 CDate 函数返回已被转换为日期子类型的变体的表达式。 CDbl 函数返回已被转换为双精度子类型的变体的表达式。 Chr 函数返回指定ANSI 字符码的字符。 CInt 函数返回已被转换为整数子类型的变体的表达式。 Class 对象提供对已创建的类的事件的访问。 Class 语句声明类名 Clear 方法清除Err 对象的所有属性设置。 CLng 函数返回已被转换为Long 子类型的变体的表达式。 颜色常数颜色常数列表。

ECshop二次开发

2010-09-05 1:如何修改网站"欢迎光临本店" 回答:languages\zh_cn\common.php文件中,$_LANG['welcome'] = '欢迎光临本店';将他修改成你需要的字样。 2:如何修改首页"热门搜索关键字" 回答:后台->系统设置->网店设置->显示设置->首页搜索关键字,修改他的内容,然后保存3:如何修改首页标题"Powered by ECShop" 回答:includes/lib_main.php,找到$page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop';修改成$page_title = $GLOBALS['_CFG']['shop_title']就可以了。 4:如何去除cshop底部查询信息的显示 回答:library/page_footer.lbi中,删除{insert name='query_info'} 5:如何发布首页公告 回答:后台->系统设置->商店设置->网店信息->商店公告.填写你需要的公告就可以了. 6:如何发布站内新闻 ecshop管理文章十分灵活,既可以管理帮助信息,也可以管理站内文章.站内新闻. 1:增加文章帮助信息 后台->文章分类->增加文章分类->(选择)网店帮助分类-> 填写分类的名称xxx 后台->文章列表->增加文章->选择网店帮助分类(xxx)->发布文章 2:增加站内信息,站内新闻 后台->文章分类->增加文章分类->增加一个文章顶级分类news 后台->文章类表->增加文章->选择分类news->发布文章 7:如何修改网站logo 回答:用你的logo图片替换/themes/default/images/logo.gif中图片就可以了 8:如何修改产品图片的大小 回答:在ecshop/themes/default/style.css中,找到.goodsItem .goodsimg{width:100px; height:100px; border:4px solid #eef8ff; margin-bottom:4px;}就可以控制产品图片的大小. 9:如何管理首页flash播放器 回答:后台-> flash播放器管理-> 增加自定义,你就可以上传和控制图片的位置 10:如何修改首页"精品推荐"栏目的more小图片 回答:模板文件中library/recommend_best.lbi中,

中more.gif图片换成你要的图片,或者将图片换成你需要的文字. 11:如何修改首页"新品上市"栏目的more小图片 回答:模板文件library/recommend_new.lbi中,
more.gif修改成你需要的图片或者是换成你需要的文字. 12:如何手动修改支付方式排列顺序 回答:数据库表中,找到payment表,pay_order字段就是用来控制顺序的,你如果想让A 支付方式排在第一,那么你需要修改该字段的值稍微大一些。 13:如何去除ecshop产品详细页产品电击率 回答:模板文件中,打开goods.dwt,删除{$lang.goods_click_count}:{$goods.click_count} 14:首页模板在哪个文件,头部模板,底部模板个什么文件名称 回答:首页模板在为index.dwt, 头部模板在library/page_header.lbi,底部文件在

ecshop二次开发

ecshop订单操作的状态对应的值 ecshop电子商务系统中,ECSHOP的订单有很多的状态。 这些状态,是维持和保证ECSHOP后台操作订单状态转换的依据。 order_status = 0表示订单未确认 order_status = 1表示订单已经确认 order_status = 2表示订单已经取消 pay_status = 0表示未付款 pay_status = 2表示已付款 shipping_status = 3表示已配货 shipping_status = 1表示已发货 shipping_status = 2表示已收货 总结以上ecshop订单的状态,方便开发人员总结开发操作。 、 Ecshop 前台显示已售出的数量 category.php 下面的 category_get_goods 函数中foreach循环添加 $arr[$row['goods_id']]['count'] = selled_count($row['goods_id']); 文件的最后部分添加函数 function selled_count($goods_id) { $sql= "select sum(goods_number) as count from ".$GLOBALS['ecs']->table('order_goods')."where goods_id ='".$goods_id."'"; $res = $GLOBALS['db']->getOne($sql); if($res>0) { return $res; } else { return('0'); }

模板 goods_list.lbi {$https://www.360docs.net/doc/bc1459505.html,pare} 下添加 销售量:{$goods.count} 如何轻松实现ecshop不同商品调用不同模板 我们这里就按照分类来调用模板 假如有4个分类 CAT_ID 为 1 2 3 4 对应的模板 goods.dwt goods1.dwt goods2.dwt goods3.dwt 那麽在 goods.php中找到 $smarty->display('goods.dwt', $cache_id); switch ($goods['cat_id']){ case 1: $smarty->display('goods.dwt', $cache_id); break; case 2: $smarty->display('goods1.dwt', $cache_id); break; case 3: $smarty->display('goods2.dwt', $cache_id); break; case 4: $smarty->display('goods3.dwt', $cache_id); break; }

相关文档
最新文档