2010-03-03 12:03 am 作者:住小窝

ecshop不能注册,用户名、邮箱已存在的解决办法

一般是整合了UC会出现这个问题,我也是整合UC后出现的,但我不知道到底是因为这个还是自己修改user.php过多造成。

官方也有一些狗屁说法,什么UC通信正常不代表整合正常,整合不正常就会出现这种问题,出现这种问题请重新整合一下UC,统统都是屁,当初搜着的时候我还如获至宝,现在想来就是浪费我时间。丫根本就没说怎么样就算整合正常了,整合正常又不代表能正常注册,这不涮人玩么。

实际上是需要修改JS文件夹下的user.js,在function registed_callback(result)和function check_email_callback(result)里分别加上

result = result.replace(/\n|\r/g, '');

这一句就好了。

原因就是,result是user.php传回来的,但不知道为什么用echo传回来的ok和true里面都带着\n\r,去掉就可以了。

每次找到bug都会感叹时间宝贵生命易逝啊!以后一定要多多使用firebug啊!

推荐(0)
收藏
2010-02-25 1:54 pm 作者:住小窝

ecshop根据关键字(标签)调用商品

其实shopex本身就有这个功能,但是ecshop居然没有,在首页调用商品只能通过新品、精品、热卖、促销这四种方式,如果你想搞一个5排以上的首页出来那基本没戏,更不用说像我目前面临的双首页(网站首页和商城首页),根本不够用。ecshop千差万差好在有一点——能改,所以我很少骂它,不爽的时候会归结于自己无能。言归正传,直接写方法:

1.  在/includes/lib_goods.php里加上这段:

/**
* 根据商品关键字调用商品

*

* @access  public

* @return  array

*/

function get_keyword_goods($keyword = '')

{

$time = gmtime();

$order_type = $GLOBALS['_CFG']['recommend_order'];

$sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, g.market_price, g.shop_price AS org_price, g.promote_price, ' .

"IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, ".

"promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, goods_img, b.brand_name, " .

"g.is_best, g.is_new, g.is_hot, g.is_promote, RAND() AS rnd " .

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

'LEFT JOIN ' . $GLOBALS['ecs']->table('brand') . ' AS b ON b.brand_id = g.brand_id ' .

"LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ".

"ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' ".

'WHERE g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ' .

" AND g.keywords LIKE '%$keyword%' " ;

$sql .= $order_type == 0 ? ' ORDER BY g.sort_order, g.last_update DESC' : ' ORDER BY rnd';

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

$goods = array();

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

{

if ($row['promote_price'] > 0)

{

$promote_price = bargain_price($row['promote_price'], $row['promote_start_date'], $row['promote_end_date']);

$goods[$idx]['promote_price'] = $promote_price > 0 ? price_format($promote_price) : '';

}

else

{

$goods[$idx]['promote_price'] = '';

}

$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]['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']        = get_image_path($row['goods_id'], $row['goods_thumb'], true);

$goods[$idx]['goods_img']    = get_image_path($row['goods_id'], $row['goods_img']);

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

}

return $goods;

2. 在需要调用商品的页面php文件(一般是index.php)里在  assign_dynamic('index'); 之前写上这段

/*指定关键字的商品*/

$smarty->assign( 'keyword_1',      get_keyword_goods('商城首页'));

其中,商城首页是我在商品的“其他信息”-“商品关键词”一栏中填写的用于调用的关键词

3. 在需要调用商品的dwt或lbi中用foreach就可以调啦

<!--{foreach from=$keyword_1 item=goods}-->

<!--{/foreach}-->

推荐(0)
收藏
2010-01-25 11:14 am 作者:住小窝

把Discuz论坛全局显示的用户名用昵称代替(如果有)zz

转载于此

有用户提出此需求,其实很久很久之前我自己也有,只是后来用惯了忘了...

还没试验,留作备份,有空就改

打开include/common.inc.php
找到:

$membertablefields = 'm.uid


在上面加:

$otherfields = ',mf.nickname';


找到:

s.seccode, $membertablefields


在后面加:(前面有空格)

$otherfields


找到:

{$tablepre}sessions s, {$tablepre}members m


在后面加:(前面有一逗号)

,{$tablepre}memberfields mf


找到:

  1. $discuz_userss = $discuz_user;
  2. $discuz_user = addslashes($discuz_user);


替换成:(危险修改,非专业需要请不要改)

  1. if(!empty($nickname)){
  2. $discuz_userss = $nickname;
  3. $discuz_user = addslashes($nickname);
  4. }else{
  5. $discuz_userss = $discuz_user;
  6. $discuz_user = addslashes($discuz_user);
  7. }


打开header.htm
找到:

  1. $discuz_userss


替换成:

  1. <!--{if empty($nickname)}-->$discuz_userss<!--{else}-->$nickname<!--{/if}-->


推荐(0)
收藏
2009-12-27 9:08 pm 作者:住小窝

ecshop在模板里调用广告位的代码

在后台添加广告位置,然后在该广告位置下添加广告(注意:每个广告位置下加一个广告),记住该广告位置的ID,然后在模板中加入下面代码即可

{insert name='ads' id=2 num=1}

ID:广告位置ID
num:显示数量

推荐(0)
收藏
2009-12-24 5:22 pm 作者:住小窝

ECShop模板里判断是否登录以及会员等级的语句

判断是否登录

{if $smarty.session.user_name}

判断会员等级

<!-- {if $smarty.session.user_rank eq '5'} -->

判断是否有促销价的语句以及促销价变量

<!--{if $goods.promote_price neq "" } -->
<li class="now-price">促销价:{$goods.promote_price}</li><br />

推荐(0)
收藏
2009-12-19 2:03 pm 作者:住小窝

shopex搬家(迁移)会员无法登录,数据库设置哪里改

关于搬家的具体步骤就不写了,有人都写过了,说说可能碰到的一个问题,就是搬完之后后台管理员能登录但会员无法登录。

出错信息如下:

  • Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'xxxx'@'localhost' (using password: YES)/core/lib/uc_client/lib/db.class.php:26
  • Can not connect to MySQL server

    Access denied for user 'xxxx'@'localhost' (using password: YES)

    1. shopcore::shutdown()

    从出错信息里能看出来是旧的数据库名和密码还在,设置没改过来,无法跟Ucenter通讯,但是/config/config.php里已经都改好了,那这个旧的设置藏在哪里呢?

    翻了一大圈,最后发现是在“商店配置-第三方整合-Ucenter1.0/1.5”里,这里改过来就能正常用了。

    推荐(0)
    收藏
    2009-12-08 11:54 pm 作者:住小窝

    Discuz首页调用缩略图的方法以及开启缩略图后帖子中不显示缩略图显示大图的方法...

    (为了让想搜的人能搜到,标题往往是万恶的长啊...)

    自从Google网页管理员出了测网页速度的新工具,鄙人就陷入了郁闷之中,鄙人的狗屎装修论坛首页13M大,载入速度低于96%的网站,杯具,彻头彻尾的杯具啊。。。究其根源就在于从Discuz朴素的首页换到了拟门户首页之后,置入的图片太大没有生成缩略图的缘故。

    痛定思痛,想手工压缩缩略图不太现实,一搜确实有一大票“列表页生成缩略图”的插件,但都不是首页,而且实现方法相当复杂。Discuz有自带生成缩略图的功能,那既然生成了总不能不让调用吧,又搜了一圈发现都相当含糊其辞。省去钻研过程若干字,直接上结论那就是:Discuz首页想要调用缩略图,开启缩略图功能即可!

    也就是说只要后台开启缩略图,那Discuz数据调用里的图片就自动是缩略图了,是不是很简单呢....-.-不是我故弄玄虚,谁让Disucz如此低调,没在这方面出个说明文件,害得我一通好找...

    但是!鄙人也不是一点儿贡献也无的,鄙人重要的脑力劳动成果其实是以下的内容:

    虽然Discuz在调用缩略图上给了我一个惊喜,但是仍然没有改变它经常会是一个操蛋的CMS的事实,那就是开启缩略图后,帖子里就显示缩略图不显示原来的大图了!而且,没地儿设置显示大图!!去官方论坛里一查,官方人员也说无法改,有个把草民说能改的,但我用了无效。再省去钻研过程若干字,那么到底如何开启缩略图功能还能让帖子里显示原图不显示缩略图呢?

    有两种情况:

    1. 如果没有开启防盗链设置中的下载来路检查的,那就直接在discuz\templates\default\discuzcode.htm这个文件里查找“ .thumb.jpg ” , 一共能找到2个,把“.thumb.jpg”删了就行。(这就是那个我用了无效的方法)

    2. 如果开启了,那在找到thumb.jpg的那两个个地方,把代码 src="{if $attach[refcheck]}attachment.php?aid=$aidencode{else}$attach[url]/$attach[attachment].thumb.jpg{/if}换成src="{if $attach[refcheck]}attachment.php?aid=$aidencode&amp;nothumb=yes{else}$attach[url]/$attach[attachment]{/if}"  即可。

    [refcheck]应该就是检查是否开启了防盗链,而nothumb=yes就是那个不显示缩略图的关键了。

    这个方法美中不足的就是点击图片后会有浮动窗口显示原图,不像没开启缩略图时那么清爽,不过无伤大雅,鉴于我也不是什么高手,怕越改越错,就不乱改了

    推荐(0)
    收藏
    2009-12-04 5:56 pm 作者:住小窝

    Discuz搬家后图片不显示 “附件文件不存在或无法读入,请与管理员联系”

    附件目录里附件都在,但无法显示,这是因为设置了下载附件来路检查,然后修改过系统主目录名称造成的

    一般论坛搬家的时候各个服务商设置的主目录文件名大抵是不同的,所以十之八九会碰到,解决方法也很简单:

    在后台->基本设置->附件设置里 关闭 下载附件来路检查,然后再开启就解决了

    推荐(0)
    收藏
    2009-12-03 4:37 pm 作者:住小窝

    用verio注册域名的指定NS别忘了加.

    天有不测风云人有旦夕祸福,本小破济南装修网站在奔向社会主义的康庄大道上 跑得屁颠屁颠的却从昨天晚上开始就无法访问了。不用说肯定是拜最近机房界扫黄打非所致,总之不管大江南北是一片腥风血雨。不幸中的万幸是还好早有搬家的打算,也考察了一阵儿国内外虚拟主机,看来看去还是homezz最顺眼,机房在国外,管理的是中国人,有QQ能及时咨询比较方便,不像老外的网站程序做得倍儿漂亮一个活人没有。这次机房挂了也促使我痛下决心一定要搬家,不过可不可以不要这么惨烈啊...一天不开搞得客户以为我们卷款潜逃了怎么办...还好现在冬天是装修淡季,还好网站小受影响的人少。

    搬的过程中还遇到点儿小问题,在verio注册的域名,设置NS的时候怎么都搞不定,DNS地址后面老跟着个51zhuwo.com,我想这不能够啊,后来恢复成默认再一看,哦,“ns1-sileni.webserversystems.com.”,这后面务必要加个“.”,否则就把你自己的域名给缀在后面,就因为这“点”屁事又浪费了一个多小时,哎,什么叫屋漏偏遭连夜雨...不过下午听闻译言挂了的噩耗,顿时觉得自己这点儿屁事不算啥了...继续祈祷网站快点儿恢复正常,早日上路啊。

    推荐(0)
    收藏
    2009-11-24 10:35 am 作者:住小窝

    li加上display:inline不能指定高度宽度

    在这个时候,如果我们要给li进行定义宽度和高度,我们就要用到float:left;(左浮动)
    程序代码
    float:left;(左浮动)他使得指定元素脱离普通的文档流而产生的特别的布局特性。并且FLOAT必需应用在块级元素之上,也就是说浮动并不应用于内联标签。或者换句话来说当应用了FLOAT那么这个元素将被指定为块级元素。

    #test1 li{
    display:inline;
    background-color:black;
    color:white;
    font-size:12px;
    width:120px;
    height:20px;
    padding:10px;
    }
    #test2 li{
    display:inline;
    float:left;
    background-color:black;
    color:white;
    font-size:12px;
    width:120px;
    height:20px;
    padding:10px;
    }

    推荐(0)
    收藏
    得到OpenID
    使用OpenID提供商
    35OpenID 35OpenID MyOpenID MyOpenID Flickr Flickr
    Google Google Yahoo Yahoo! AOL AOL
    Blogger Blogger LiveJournal LiveJournal Verisign Verisign
    ClaimID ClaimID Technorati Technorati Vidoop Vidoop
    OpenID OpenID 帮助
    您还没有登录,请登录后继续操作。
    提示:您必需打开Cookie才能使用本系统
    请输入您的 OpenID OpenID 登录:
    例如:http://yourname.openid.35.com
    close