Ecshop之smarty与js冲突问题

在使用 smarty 的时候,如果没有更改 smarty 配置,smarty 的定界符是{ },大家经常可能碰到模板页中js无法正确执行的问题。 这就是因为 smarty 引擎把js中 { } 之间的内容也当做 smarty 语句来处理,本人总结的解决这个问题主要有三个: 更改 smarty 配置文件中的定界符。 把 javascript代码写到一个js文件中,在模板页中引用即可。 使用 smarty 内置的 literal 标签,此标签内的数据将会被当做文本处理。例如 {literal} <script language="javascript"> ........ </script> {/literal} 有时,我们需要输出定界符 { },则可以使用 {ldelim} 和 {rdelim} 标签来输出左右定界符。

2015-05-29 · 王二

Ecshop 广告位宽度值必须在1 1024之间 修改方法

一、打开文件 \admin\ad_position.php,将其中的1024改为你需要的最大值。 二、打开文件 \admin\templates\ad_position_info.htm,将其中的1024改为你需要的最大值。

2015-05-29 · 王二

PHP获取指定时区当前时间-PHP获取世界时钟

公司一个项目中需要展现几个不同时区的当前时间,由于php技术很菜,遂百度之,综合各种结果写了下边小函数。 function world_time($timezone_identifiers)//获取指定时区当前时间 { date_default_timezone_set($timezone_identifiers); //设置默认时区为指定时区 echo date('H:i:s',time()); //输出指定时区当前时间 date_default_timezone_set('RPC'); //将默认时区调回为北京时间 } <li>日本:<?php world_time('Asia/Tokyo'); ?></li> <li>香港:<?php world_time('Asia/Hong_Kong'); ?></li> <li>伦敦:<?php world_time('Europe/London'); ?></li> <li>纽约:<?php world_time('America/New_York'); ?></li>

2015-05-04 · 王二

phpcms 更新栏目缓存 `PHP Has Encountered a Stack Overflow` 解决办法

phpcms网站后台更新栏目缓存后报错: PHP has encountered a Stack overflow 解决方法: 1、首先这个问题是出在数据库表上,所以登陆空间的 phpmyadmin 去管理数据库表 2、执行sql语句:SELECT * FROM v9_category WHERE catid=parentid (注意,v9_是表前缀,记得修改成自己的表前缀) 3、正常情况下这个搜索是查询不到记录的,如果查询到记录,说明该记录有问题 4、解决方法把该记录的:parentid的值修改为0即可 原因剖析: v9_category 表中存在,「分类id(catid)」 等于「父级分类id(parentid)」的记录,导致程序构造树形分类据时,出现了死循环,导致栈内存溢出。

2015-03-31 · 王二

php判断是否手机访问-php判断访问终端类型

php判断是否手机访问-php判断访问终端类型 $agent = check_wap(); if( $agent ) { header('Location: /m/'); exit; } // check if wap function check_wap(){ // 先检查是否为wap代理,准确度高 if(stristr($_SERVER['HTTP_VIA'],"wap")){ return true; } // 检查浏览器是否接受 WML. elseif(strpos(strtoupper($_SERVER['HTTP_ACCEPT']),"VND.WAP.WML") > 0){ return true; } //检查USER_AGENT elseif(preg_match('/(blackberry|configuration\/cldc|hp |hp-|htc |htc_|htc-|iemobile|kindle|midp|mmp|motorola|mobile|nokia|opera mini|opera |Googlebot-Mobile|YahooSeeker\/M1A1-R2D2|android|iphone|ipod|mobi|palm|palmos|pocket|portalmmm|ppc;|smartphone|sonyericsson|sqh|spv|symbian|treo|up.browser|up.link|vodafone|windows ce|xda |xda_)/i', $_SERVER['HTTP_USER_AGENT'])){ return true; } else{ return false; } }

2015-03-25 · 王二

Ecshop自定义调用指定广告位

一、在 includes/lib_common.php 文件中最下方添加如下函数: /*自定义调用指定广告位*/ function getads($cat,$num) { $time = gmtime(); $sql = "SELECT * FROM " . $GLOBALS['ecs']->table('ad') . " where position_id=".$cat." and start_time <= '" . $time . "' AND end_time >= '" . $time . "' ORDER BY ad_id desc limit ".$num; $res = $GLOBALS['db']->getAll($sql); $arr = array(); foreach ($res AS $idx => $row) { $arr[$idx]['id'] = $row['ad_id']; $arr[$idx]['title'] = $row['ad_name']; $arr[$idx]['ad_link'] = $row['ad_link']; $arr[$idx]['ad_code'] = "data/afficheimg/".$row['ad_code']; } return $arr; } 二、在需要调用广告的页面(例如首页)的控制文件(index....

2014-11-26 · 王二

Destoon修改商务便签文字

会员注册登录以后商务便签默认会显示: 欢迎使用DESTOON B2B网站管理系统www.destoon.com, 修改如下文件即可: file/user/1/1/note.php

2014-11-14 · 王二

Ecshop首页获取指定分类的推荐商品

ecshop自带函数就可以实现这个功能,函数如下: include/lib_goods.php 中的 get_category_recommend_goods($type = '', $cats = '', $brand = 0, $min =0, $max = 0, $ext='') 函数。 调用步骤: 第一步:在根目录 index.php 文件 $smarty->assign('shop_notice', $_CFG['shop_notice']); // 商店公告 下方(约128行),插入如下代码: $smarty->assign('category_recommend_goods22', get_category_recommend_goods('hot',22)); //调用指定分类下推荐商品 其中 category_recommend_goods22 为在模板中调用的名称,hot 为要调用的推荐类型,22 为指定分类的分类id。 第二步:打开你的首页模板文件,在需要调用的地方插入下边代码: <!--{foreach from=$category_recommend_goods22 item=goods name="category_recommend_goods"}--> <!-- {if $smarty.foreach.category_recommend_goods.iteration < 7} **商品显示数量 --> <li><a href="{$goods.url}"><img src="{$goods.thumb}" width="194" height="172" /></a><div><br /> <a href="{$goods.url}">{$goods.name|truncate:10:"...":true}</a><br />{$goods.brief}<br /> ¥{$goods.shop_price}</div> </li> <!--{/if}--> <!--{/foreach}--> 完成上边两部基本上就大功告成了,但是有个问题,就是不能获取到该指定分类的子分类下的推荐商品,这样就需要对默认的函数进行改造,方法见第三步。 第三步:找到第一步用到的函数 get_category_recommend_goods,查找 if (!empty($cats)) { $sql ....

2014-11-11 · 王二

Css实现文字竖排

第一种方法:将需要竖排显示的字符放在span中,在CSS中设置span的display属性为block,不过不推荐使用这种方法,因为有些麻烦,代码如下: h1 span { display: block; } <h1> <span> N </span> <span> E </span> <span> T </span> <span> T </span> <span> U </span> <span> T </span> <span> S </span> </h1> 第二种方法A:同样使用CSS,在需要竖向显示的地方,强制定义显示区域的宽度,这样字符会自动竖向排列:请看具体代码: <!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title>Vertical Text</title> <style> h1 { width: 50px; font-size: 50px; word-wrap: break-word; } </style> </head> <body> <h1> NETTUTS </h1> </body> </html> 第二种方法B:同样是使用CSS,推荐使用这种方法,觉得这个方法兼容性也好,而且代码简洁,字符也容易控制。 <!DOCTYPE html> <html> <head> <title>竖向排列的文字</title> <style> h1 { width: 50px; font-size: 50px; word-wrap: break-word; letter-spacing: 20px; } </style> </head> <body> <h1>我爱北京天安门</h1> </body> </html> 第三种方法:使用JavaScript(不推荐,其实这么一个小小的功能,动用JS就太不划算了,毕竟我们有比这更有效、更简洁的办法)...

2014-10-24 · 王二

英尺(inch)、厘米(cm) JS转换

外贸网站中经常用到的工具: Converter:cminch Converter:inchcm 附上代码: <ul> <li> <strong> Converter:</strong><input type="text" id="ctictxt" /><b>cm</b><input type="text" id="ctiitxt" value="0.00" /><b>inch</b> <input type="button" value="calculation" onclick="javascript:document.getElementById('ctiitxt').value=(parseFloat(document.getElementById('ctictxt').value==''?0:document.getElementById('ctictxt').value)*0.39370079).toFixed(2)" /> </li> <li> <strong> Converter:</strong><input type="text" id="itcitxt" /><b>inch</b><input type="text" id="itcctxt" value="0.00" /><b>cm</b> <input type="button" value="calculation" onclick="javascript:document.getElementById('itcctxt').value=(parseFloat(document.getElementById('itcitxt').value==''?0:document.getElementById('itcitxt').value)*2.54).toFixed(2)" /> </li> </ul>

2014-10-21 · 王二