当前位置:文档之家› ECSHOP函数功能说明

ECSHOP函数功能说明

ECSHOP函数功能说明
ECSHOP函数功能说明

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, $file = '', $line = '')

P: 写入日志内容

make_dir($folder)

P: 检查目标文件夹是否存在,如果不存在则自动创建该目录

gzip_enabled()

P: 获得系统是否启用了gzip

addslashes_deep($value)

P: 递归方式的对变量中的特殊字符进行转义

addslashes_deep_obj($obj)

P: 将对象成员变量或者数组的特殊字符进行转义

stripslashes_deep($value)

P: 递归方式的对变量中的特殊字符去除转义

make_semiangle($str)

P: 将一个字串中含有全角的数字字符、字母、空格或'%+-()'字符转换为相应半角字符

check_file_type($filename, $realname = '', $limit_ext_types = '')

P: 检查文件类型/文件名/真实文件名/允许的文件类型

mysql_like_quote($str)

P: 对MYSQL LIKE 的内容进行转义过滤掉_ %等字符.

real_server_ip()

P: 获取服务器的ip

ecs_header($string, $replace = true, $http_response_code = 0)

P: 自定义header 函数,用于过滤可能出现的安全隐患

ecs_iconv($source_lang, $target_lang, $source_string = '') P: 自定义的编码转换

ecs_geoip($ip)

P: 取得IP的地址,采用IP库

trim_right($str)

P: 去除字符串右侧可能出现的乱码

move_upload_file($file_name, $target_name = '')

P: 将上传文件转移到指定位置

json_str_iconv($str)

P: 将JSON传递的参数转码

get_file_suffix($file_name, $allow_type = array())

P: 获取文件后缀名,并判断是否合法

read_static_cache($cache_name)

P: 读结果缓存文件

write_static_cache($cache_name, $caches)

P: 写结果缓存文件

lib_common.php (公用函数库)

db_create_in($item_list, $field_name = '')

P: 创建像这样的查询: "IN('a','b')" $item_list为数组

is_email($user_email)

P: 验证输入的邮件地址是否合法

is_time($time)

P: 检查是否为一个合法的时间格式

assign_query_info()

P: 获得查询时间和次数,并赋值给smarty

region_result($parent, $sel_name, $type)

P: 创建地区的返回信息

get_regions($type = 0, $parent = 0)

P: 获得指定国家的所有省份, 函数需要数据库支持.

get_shipping_config($area_id)

P: 获得配送区域中指定的配送方式的配送费用的计算参数比如快捷公司不同.

init_users()

P: 初始化会员数据整合类

cat_list($cat_id = 0, $selected = 0, $re_type = true, $level = 0, $is_show_all = true)

P: 获得指定分类下的子分类的数组, $re_type控制返回类型

cat_options($spec_cat_id, $arr)

P: 过滤和排序所有分类,返回一个带有缩进级别的数组

load_config()

P: 载入配置信息

get_brand_list()

P: 取得品牌列表

get_brands($cat = 0, $app = 'brand')

P: 获得某个分类下的品牌列表

get_promotion_info($goods_id = '')

P: 所有的促销活动信息

get_children($cat = 0)

P: 获得指定分类下所有底层分类的ID

get_article_children ($cat = 0)

P: 获得指定文章分类下所有底层分类的ID

get_mail_template($tpl_name)

P: 获取邮件模板

order_action($order_sn, $order_status, $shipping_status, $pay_status, $note = '', $username = null)

P: 记录订单操作记录

price_format($price, $change_price = true)

P: 格式化商品价格

get_virtual_goods($order_id, $shipping = false)

P: 返回订单中的虚拟商品记录是否发货.

virtual_goods_ship(&$virtual_goods, &$msg, $order_sn, $return_result = false, $process = 'other')

P: 虚拟商品发货

virtual_card_shipping ($goods, $order_sn, &$msg, $process = 'other') P: 虚拟卡发货

virtual_card_result($order_sn, $goods)

P: 返回虚拟卡信息

get_snatch_result($id)

P: 获取指定id snatch 活动的结果

clear_tpl_files($is_cache = true, $ext = '')

P: 清除指定后缀的模板缓存或编译文件

clear_compiled_files($ext = '')

P: 清除模版编译文件

clear_cache_files($ext = '')

P: 清除缓存文件

clear_all_files($ext = '')

P: 清除模版编译和缓存文件

smarty_insert_scripts($args)

P: 页面上调用的js文件,组合功能.

smarty_create_pages($params)

P: 创建分页的列表

build_uri($app, $params, $append = '', $page = 0, $size = 0)

P: 重写URL 地址

formated_weight($weight)

P: 格式化重量

log_account_change($user_id, $user_money = 0, $frozen_money = 0, $rank_points = 0, $pay_points = 0, $change_desc = '', $change_type =

ACT_OTHER)

P: 记录帐户变动

article_cat_list($cat_id = 0, $selected = 0, $re_type = true, $level = 0) P: 获得指定分类下的子分类的数组/ 向下取数组.

article_cat_options($spec_cat_id, $arr)

P: 过滤和排序所有文章分类,返回一个带有缩进级别的数组

uc_call($func, $params=null)

P: 调用UCenter的函数

exception_handler($errno, $errstr, $errfile, $errline)

P: error_handle回调函数未启用.

get_image_path($goods_id, $image='', $thumb=false, $call='goods', $del=false)

P: 重新获得商品图片与商品相册的地址

user_uc_call($func, $params = null)

P: 调用使用UCenter插件时的函数

get_volume_price_list($goods_id, $price_type = '1')

P: 取得商品优惠价格列表

get_final_price($goods_id, $goods_num = '1', $is_spec_price = false, $spec = array())

P: 取得商品最终使用价格

get_package_info($id)

P: 获取指定id package 的信息

get_package_goods($package_id)

P: 获得指定礼包的商品

lib_main.php (前台公用函数库)

update_user_info()

P: 更新用户SESSION,COOKIE及登录时间、登录次数。get_user_info($id=0)

P: 获取用户信息数组

assign_ur_here($cat = 0, $str = '')

P: 取得当前位置和页面标题

get_parent_cats($cat)

P: 获得指定分类的所有上级分类

build_pagetitle($arr, $type = 'category')

P: 根据提供的数组编译成页面标题

build_urhere($arr, $type = 'category')

P: 根据提供的数组编译成当前位置

assign_dynamic($tmp

P: 获得指定页面的动态内容

assign_articles($id, $num)

P: 分配文章列表给smarty

get_shop_help()

P: 分配帮助信息

assign_pager($app, $cat, $record_count, $size, $sort, $order, $page = 1,$keywords = '', $brand = 0, $price_min = 0, $price_max = 0, $display_type = 'list', $filter_attr='', $url_format='', $sch_array='')

P: 创建分页信息.分页函数.

get_pager($url, $param, $record_count, $page = 1, $size = 10)

P: 生成给pager.lbi赋值的数组

get_vote($id = '')

P: 调用调查内容

get_user_browser()

P: 获得浏览器名称和版本

is_spider($record = true)

P: 判断是否为搜索引擎蜘蛛

get_os()

P: 获得客户端的操作系统

visit_stats()

P: 统计访问信息

save_searchengine_keyword($domain, $path)

P: 保存搜索引擎关键字

get_tags($goods_id = 0, $user_id = 0)

P: 获得指定用户、商品的所有标记

get_dyna_libs($theme, $tmp)

P: 获取指定主题某个模板的主题的动态模块

dyna_libs_replace($matches)

P: 换动态模块

upload_file($upload, $type)

P: 处理上传文件,并返回上传图片名(上传失败时返回图片名为空)show_message($content, $links = '', $hrefs = '', $type = 'info', $auto_redirect = true)

P: 显示一个提示信息

parse_rate_value($str, &$operate)

P: 将一个形如+10, 10, -10, 10%的字串转换为相应数字,并返回操作符号

recalculate_price()

P: 重新计算购物车中的商品价格:目的是当用户登录时享受会员价格,当用户退出登录时不享受会员价格

assign_comment($id, $type, $page = 1)

P: 查询评论内容

assign_template($ctype = '', $catlist = array())

P: 默认的smarty赋值

time2gmt($time)

P: 将一个本地时间戳转成GMT时间戳

get_user_bonus($user_id = 0)

P: 查询会员的红包金额

set_affiliate()

P: 保存推荐uid

get_affiliate()

P: 获取推荐uid

article_categories_tree($cat_id = 0)

P: 获得指定分类同级的所有分类以及该分类下的子分类get_article_parent_cats($cat)

P: 获得指定文章分类的所有上级分类

get_library_number($library, $template = null)

P: 取得某模板某库设置的数量

get_navigator($ctype = '', $catlist = array())

P: 取得自定义导航栏列表

license_info()

P: 授权信息内容

lib_insert.php (动态内容函数库)

insert_query_info()

P: 获得查询次数以及查询时间

insert_history()

P: 调用浏览历史

insert_cart_info()

P: 调用购物车信息

insert_ads($arr)

P: 调用指定的广告位的广告

insert_member_info()

P: 调用会员信息

insert_comments($arr)

P: 调用评论信息

insert_vote()

P: 调用在线调查信息

lib_goods.php (商品相关函数库)

goods_sort($goods_a, $goods_b)

P: 商品推荐usort用自定义排序行数

get_categories_tree($cat_id = 0)

P: 获得指定分类同级的所有分类以及该分类下的子分类get_child_tree($tree_id = 0)

P: 取和指定分类ID下的分类树

get_top10($cats = '')

P: 调用当前分类的销售排行榜

get_recommend_goods($type = '', $cats = '')

P: 获得推荐商品

get_promote_goods($cats = '')

P: 获得促销商品

get_category_recommend_goods($type = '', $cats = '', $brand = 0, $min =0, $max = 0, $ext='')

P: 获得指定分类下的推荐商品

get_goods_info($goods_id)

P: 获得商品的详细信息

get_goods_properties($goods_id)

P: 获得商品的属性和规格

get_same_attribute_goods($attr)

P: 获得属性相同的商品

get_goods_gallery($goods_id)

P: 获得指定商品的相册

assign_cat_goods($cat_id, $num = 0, $from = 'web')

P: 获得指定分类下的商品

assign_brand_goods($brand_id, $num = 0, $cat_id = 0)

P: 获得指定的品牌下的商品

get_extension_goods($cats)

P: 获得所有扩展分类属于指定分类的所有商品ID

bargain_price($price, $start, $end)

P: 判断某个商品是否正在特价促销期

spec_price($spec)

P: 获得指定的规格的价格

group_buy_info($group_buy_id, $current_num = 0)

P: 取得团购活动信息

group_buy_stat($group_buy_id, $deposit)

P: 取得某团购活动统计信息

group_buy_status($group_buy)

P: 获得团购的状态

auction_info($act_id, $config = false)

P: 取得拍卖活动信息

auction_log($act_id)

P: 取得拍卖活动出价记录

auction_status($auction)

P: 计算拍卖活动状态(注意参数一定是原始信息)goods_info($goods_id)

P: 取得商品信息

favourable_info($act_id)

P: 取得优惠活动信息

wholesale_info($act_id)

P: 批发信息

add_style($goods_name, $style)

P: 添加商品名样式

get_goods_attr($goods_id)

P: 取得商品属性

get_goods_fittings($goods_list = array())

P: 获得购物车中商品的配件

lib_article.php (文章及文章分类相关函数库)

get_cat_articles($cat_id, $page = 1, $size = 20 ,$requirement='') P: 获得文章分类下的文章列表

get_article_count($cat_id ,$requirement='')

P: 获得指定分类下的文章总数

案例网站:https://www.doczj.com/doc/1114826304.html,/

二次开发基础知识: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属性价格改为直接价格而不是加的价格的完美解决方案 (附价格项其他美化方法) 网上的ecshop属性价格改为直接价格而不是加的价格的解决方案如下: 打开文件,查找代码includes/lib_common.php function get_final_price中 //如果需要加入规格价格 if ($is_spec_price) { if (!empty($spec)) { $spec_price = spec_price($spec); $final_price += $spec_price; } } 将此处的$final_price += $spec_price;的+号去掉 按照此方法改了,有个很大的bug,那就是其他没有添加属性的商品价格都为0了,我们的解决方案是修改成如下: if ($is_spec_price) { if (!empty($spec)) { $spec_price = spec_price($spec); if($spec_price!=0) $final_price = $spec_price; } }

要改成想京东淘宝那样,直接点击所属属性就显示其相应价格,而且后面不显示加**字样,方法如下: 1.先改商品价格随属性变动而变动 在你所在模板目录下的goods.dwt文件中找到价格那块的字段,找到价格前面的id,找到之后,在goods.dwt文件最底部复制下图画框上面一段,然后在下面粘贴一下,把上面价格里的id改到这块即可。 此图就是修改后的效果。 2.干掉加**字样 同样在该goods.dwt页,搜索{$https://www.doczj.com/doc/1114826304.html,bel} [{if $value.price gt 0}{$lang.plus}{elseif $value.price lt 0}{$lang.minus}{/if} {$value.format_price|abs}] 替换成{$https://www.doczj.com/doc/1114826304.html,bel} {if $value.price gt 0}{elseif $value.price lt 0}{/if} 记得是全替换,大概有二三处,其实直接删掉也没问题的哦 3.最终效果如图

ecshop目录结构图

适用所有ecshop版本模板的放大镜(含小图切换大图效果)

【1】.先下载 mzp.packed.js 下载地址:https://www.doczj.com/doc/1114826304.html,/static/magiczoomplus-demo.zip 【2】.在模板中引入 mzp.packed.js 文件 有2种方式来引入 第一种方式:把mzp.packed.js 放到 ec根目录 js目录下面 这样在goods.dwt文件里面添加一行: 1.{insert_scripts files='common.js,mzp-packed.js'} 复制代码 第二种方式:把mzp.packed.js放到模板文件夹里面的js目录下 这样在goods.dwt里面添加一行: 1. 复制代码 如果很多朋友发现没有效果那检查下是否成功的加载了js代码 【3】在goods.dwt里面添加如下代码:我们以ecshop2.70 default模板为准其他模板依此类推 1. 2. 3. {$goods.goods_name|escape:html} 4. 5. 6. 7. {$goods.goods_name|escape:html} 8. 9. 复制代码 【4】找到库文件 goods_gallery.lbi 改为如下

ecshop模板结构说明及标签(二次开发使用)

ECSHOP 模板结构说明(适用版本v2.1.5+) 名称类型备注(作用或意义)文件(目录)名可否更改images 目录存放模板图片目录不可更改 library 目录存放模板库文件目录不可更改 screenshot.png 图片用于“后台管理-> 模板管理-> 模板选择”显示 模板缩略图。 不可更改 style.css css样式表不可更改 备注:模板文件共32个(格式:.dwt)。 提醒: 1, 更改模板文件里面库文件的内容是无效的,页面刷新时,程序自动重新载入库文件内容到模板文件里(以库文件内容为准)。 2, 模板内所有id值为ECS_ 开头的都必须保留(和ajax相关)。 3, 非库文件内容不可放置到可编辑区域内,否则设置模板时,非库文件内容将被覆盖删除。 activity.dwt 模板文件活动列表页不可更改 article.dwt 模板文件文章内容页不可更改 article_cat.dwt 模板文件文章列表页不可更改 article_pro.dwt 模板文件文章内容页(如免责声明等) 不可更改 auction.dwt 模板文件拍卖商品详情页不可更改 auction_list.dwt 模板文件拍卖商品页不可更改 brand.dwt 模板文件商品品牌页不可更改 brand_list.dwt 模板文件商品品牌列表页不可更改 catalog.dwt 模板文件所有分类页不可更改 category.dwt 模板文件商品列表页不可更改 compare.dwt 模板文件商品比较页不可更改 flow.dwt 模板文件购物车和购物流程页不可更改 gallery.dwt 模板文件商品相册页不可更改 goods.dwt 模板文件商品详情页不可更改 group_buy_goods.dwt 模板文件团购商品详情页不可更改 group_buy_list.dwt 模板文件团购商品列表页不可更改 index.dwt 模板文件首页不可更改message.dwt 模板文件信息提示页不可更改 message_board.dwt 模板文件留言板页不可更改 myship.dwt 模板文件我的配送页不可更改

ECshop模板制作教程

ECshop模板制作教程 我是一个EC新手,EC就算做再多的模板,肯定也满足不了我们的需要,更何况各行有各行的门道,EC统一做出来的模板也不一定合适于我们这个行业用,因此,只有我们真正掌握了自己做模板,修改模板的功夫,才能真正的打造适合自己的电子商务平台,真正打造符合自己行业内的客户习惯的电子商务平台。 首先欢迎各位浏览本教程,恭喜大家使用 ECshop,!EC有多好,ECshop是PHP 构建的,PHP的应用我也不想多说了(亚马逊:https://www.doczj.com/doc/1114826304.html,,雅虎:https://www.doczj.com/doc/1114826304.html,,百度:https://www.doczj.com/doc/1114826304.html,淘宝:https://www.doczj.com/doc/1114826304.html,新浪:https://www.doczj.com/doc/1114826304.html,,腾讯:https://www.doczj.com/doc/1114826304.html,),(ps: ECshop成功了!在这一刻,他是伟大电子商务的传承,他不是一个人在战斗,他不是一个人 -_-!!! ) 我也不多讲了大家都知道,不过有时候热爱潜水的我真的时是实在忍不住要跳出来说两句. 本教程适用于了解 ECshop 和 ECshop模板DIY 以及它们的日常使用,在查看前阁下需要至少会使用一种编辑器(exp:Dreamweaver, editplus, emacs, vi, ee …意思就是可视化的HTML编辑器或者直接文本编辑器,我在讲的时候用Dreamwaver来讲,这样比较适合初学者和设计师)。这个教程目前由我一个人维护,但我相信,过不了多久就会有多人持续地维护。其中的内容需要不断地更新。如果您有兴趣参加,嘿嘿,PM我。我们一起为大家服务啊. 通过对本教程的学习,只要您边看边跟着做,一定能够学会自己做模板的。:) 下列章节的适用于ECshop程序。同时这里许多内容和一些 Smarty相关。假如您已经熟悉这些内容可跳过不阅读。假如您是ECshop新手并且想diy一下自己的店铺,那您应该认真详细地从头到尾读一遍这些章节。( ps: 大家不要紧张,我会尽量用人类的语言和大家交流,实在万不得已才会用机器语言展示给大家 ) 希望大家能够通过本教程,想要什么模板都能自己做出来。哈哈!一起加油吧! 第一章节: 读取这些内容,您将了解: 每个前台页面所对应的模板页面,模板文件的目录结构。 一些最基本的ECshop模板修改方法。 模板的路径以及相关包含文件的方法(深入了解Dreamweaver模板制作)。 一些常用模板例子讲解. 模板存放路径: ecshop/themes/xxxxx 其中的xxxxx就是某一套模板,如系统一般会自带的

ecshop数据表说明

Ecshop数据库表说明 ECSHOP开发中心(https://www.doczj.com/doc/1114826304.html,) 数据库结构说明,以及自己在后台备份不需要备份的表(红色字体是不需要备份的表)数据库采用mysql,共78张表 ecs_account_log:账户变动日志(注册用户充值、支付等记录信息) ecs_ad:广告表 ecs_admin_action:管理员权限表(定义了128项功能操作) ecs_admin_log:管理员操作日志表 ecs_admin_message:管理员留言表 ecs_admin_user:系统管理员表 ecs_adsense:站外JS投放 ecs_ad_position:广告位置表 ecs_affiliate_log:分成记录表 ecs_agency:办事处列表 ecs_area_region:区域范围表(如配送区域等) ecs_article:文章表 ecs_article_cat:文章分类表 ecs_attribute:各类商品扩展属性管理表 ecs_auction_log:拍卖活动出价记录表 ecs_auto_manage:自动上下架管理 ecs_bonus_type:红包类型 ecs_booking_goods:缺货登记 ecs_brand:商品品牌表 ecs_card:祝福贺卡表 ecs_cart:购物车 ecs_category:商品分类表 ecs_cat_recommend:首页推荐商品分类 ecs_collect_goods:用户商品收藏表

ecs_comment:用户评论表 ecs_crons:计划任务 ecs_email_list:邮件订阅表 ecs_email_sendlist:待发送邮件列表 ecs_error_log:错误日志 ecs_exchange_goods:积分商城商品表 ecs_favourable_activity:优惠活动表 ecs_feedback:用户留言表 ecs_friend_link:友情连接表 ecs_goods:商品表 ecs_goods_activity:参加活动商品表(如夺宝奇兵、团购、拍卖、礼包)ecs_goods_article:商品关联文章 ecs_goods_attr:商品对应的扩展属性表 ecs_goods_cat:商品扩展分类表 ecs_goods_gallery:商品对应的图片列表 ecs_goods_type:网站所有的商品类型(如化妆品) ecs_group_goods:配件商品 ecs_keywords:网站搜索关键字表 ecs_link_goods:相关商品 ecs_mail_templates:发送邮件的模板表 ecs_member_price:商品会员价格表 ecs_nav:导航栏目设置 ecs_order_action:订单操作表 ecs_order_goods:订单商品表 ecs_order_info:订单信息表 ecs_pack:商品包装 ecs_package_goods:礼包关联商品表 ecs_payment:支付方式表 ecs_pay_log:付费日志 ecs_plugins:插件 ecs_region:全国地区表 ecs_searchengine:搜索引擎 ecs_sessions:网站用户session表

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 程序说明

ECSHOP模板头部修改

今天开始从头部进行修改,头部的话针对的是所有的页面,你可以把头部做成一个公用文件,不过由于调用的JS和一些样式的不同也可以分开来做,如果要做成公共头文件的话,要把所有页面都会调用的JS和CSS加载上,不过东西也不多的,下面我就做成一个公共文件来用。 先讲一下每个页面的关键字:{$keywords},这是使用的smarty模板变量用来输出。“{}”是用来规定标签的开始与结束位置,有些类似于PHP中的“”,原理是一样的,中间的变量$keywords是从后台PHP文件中传输过来的变量,里面存储有值,{$keywords}就是把里面的值进行输出,由于{$keywords}和{$page_title}(页面标题的输出,在title标签间输出)是包含在head标签中的,所以我们可以不用动它们,不必把它们写进公共头文件。在head 标签中还有一个{insert_scripts files=','},它是用来调用JS文件的,如所见,它调用了,两个JS文件,head内的我们都不做为公共头文件,不过一会在公共头文件中我们会用到这个调用JS的方式,把所有要用到的JS文件调用进来。 首先新建一个公共头文件与其它*.dwt文件放一起,在第一行我们调用所有的JS文件:{insert_scripts files=',,auto_,,,,,,shopping_,,,,,'} JS文件很多,但不是每个页面都会用到所有的JS文件,或都有的页面已经在head中调用了一些需要使用的JS文件,有与我们写的JS文件重复的,没有关系,我们只是为了做一个公共文件,不用在每个页面都单独再去调用,有重复不会有任何影响。 下来我们来确定一下的字符集设置: 我使用的是gbk字符集,如果你使用的是utf-8的话,就要把字符集进行相应设置。 下面是一段JS代码: 设置它是为了防止有些页面调用JS页面时出现加载错误而无法正常运行程序。 下面是对LOGO图片的设置:

ecshop常见问题汇总

Ecshop常见问题汇总 ECSHOP开发中心(https://www.doczj.com/doc/1114826304.html,) 1、如何修改网站"欢迎光临本店" 回答(1) languages\zh_cn\common.php文件中,$_LANG['welcome'] = '欢迎光临本店';将他修改成你需要的字样。 还有member_info.lbi里面的welcome字样。 回答(2) 打开网站后台-模板选择-语言项编辑选择公共语言包-搜索“欢迎”进行修改 2、如何修改登录\注册字体的颜色 在库文件member_info.lbi 中修改 3、如何修改首页"热门搜索关键字" 后台-系统设置-网店设置-显示设置-首页搜索关键字,修改他的内容,然后保存,必须是英文半角字符隔开 4、如何修改首页标题"Powered by ECShop" includes/lib_main.php,找到$page_title = $GLOBALS['_CFG']['shop_title'] . ' - ' . 'Powered by ECShop';修改成$page_title = $GLOBALS['_CFG']['shop_title']就可以了。 5、如何发布首页公告 后台->系统设置->商店设置->网店信息->商店公告. 6、如何修改网站logo 用你的logo图片替换/themes/当前使用模板/images/logo.gif (以你当前logo图的名称为准) 7、如何去除ecshop产品详细页产品点击率 模板文件中,打开goods.dwt,删除{$lang.goods_click_count}: {$goods.click_count}

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.doczj.com/doc/1114826304.html,/ecshop-ercikaifa/272.htm 下面就以ECSHOP官方默认模板为基础,给大家提供一个完整的解决方案。 (本教程由ECSHOP120(https://www.doczj.com/doc/1114826304.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.doczj.com/doc/1114826304.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.doczj.com/doc/1114826304.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.doczj.com/doc/1114826304.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模板中如何实现局部刷新 建立一个ajax.js文件,代码如下: // JavaScript Document var xmlHttp; function S_xmlhttprequest() { xmlHttp=null; if (window.XMLHttpRequest) {// code for IE7, Firefox, Opera, etc. xmlHttp=new XMLHttpRequest(); } else if (window.ActiveXObject) {// code for IE6, IE5 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } function getName(name) { if(name = https://www.doczj.com/doc/1114826304.html,.value) { S_xmlhttprequest(); xmlHttp.open("get","date.php?name="+name,true); xmlHttp.onreadystatechange = byname; xmlHttp.send(null); } }

function byname() { if(xmlHttp.readyState ==1) { document.getElementById('name').innerHTML = "loading...."; } if(xmlHttp.readyState == 4) { if(xmlHttp.status == 200) { var name = xmlHttp.responseText; document.getElementById('name').innerHTML = name; } } } function getEmail(email) { var email = document.myform.email.value; if(email =="") { alert("用户名不能为空"); document.myform.email.focus(); return false; } else { S_xmlhttprequest(); xmlHttp.open("get","date.php?email="+email,true); xmlHttp.onreadystatechange = byemail; xmlHttp.send(null); }

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教程-ecshop模板中lbi和dwt文件的关系 ecshop教程-ecshop模板中lbi和dwt文件的关系 要修改ecshop模板必要要了解下lbi和dwt文件,如果把这个问题弄明白了,那对我们修改ecshop模板的帮助就很大了。 之间讲过了[ecshop教程-ecshop 修改对应参考] ,下面我们讲下ecshop中的dwt和lbi文件 首先要明白dwt模板文件是一个(框架),控制着ecshop的大体框架,里面链接着所需的lbi库文件(内容)。修改dwt里面lbi部分的内容是不会发生变化的.需要修改lbi文件.然而lbi内容也可以镶嵌到dwt模板文件里面(镶嵌就是分离到模板文件里面了,和原先的lbi文件没有关系了.)但是这样的话.其他dwt模板页面也使用到相同的lbi板块的话,内容就不能同步了.只能再继续镶嵌,造成了效率不高。所以ecshop才把内容lbi文件分离出来,方便链接。 在模板文件里面添加可编辑区域.(可编辑区域是给程序使用的.每在模板里面添加一个可编辑区域都可以在"模板管理=>设置模板"的区域里面看到已添加的可编辑区域的名字.),然后就可以通过后台管理的"设置模板",把库文件调到您想要的可编辑区域里面. 明白这些对于ecshop初学者来说可能比较困难,但寨卒认为,只要多动手修改,别人给出代码的时候不要一味的直接抄袭来,按部就班的修改完之后,再回头思考下,慢慢的就会总结出来好的代码修改方法了。当然多来我的博客也会有好处的。 下面举个例子来说明,拿ecshop2.6.2中的默认模板来说。index.dwt里 之后有如下代码。

{$lang.shop_notice}

{$shop_notice}

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 的最后加入

文本预览