2010-03-15 10:06 pm 作者:住小窝

刚不小心瞅了一眼右侧的存档列表

发现这个blog居然是从2008年12月份就开始写了的

就是这个半死不活不热情更新总让我觉得随时就会放弃的blog

而且就从一个沽名钓誉产品经理可能写出的那种假大空博变成了一个无聊技术人员可能写出的干瘪乏味博

说实话我是挺吃惊的

时间是怎么样划过了我皮肤只有我自己最清楚?

我的blog和twitter(饭否、校内)都比我自己门清得多吧

推荐(0)
收藏
2010-03-15 10:01 pm 作者:住小窝

The requested URL xxx was not found on this server

这个xxx可能是任何你服务器上的文件地址,你用mod_rewrite重定向过的那些

出现这类问题的原因就是你的.htacess文件里面“RewriteBase /”这个斜杠后面可能多加了点儿什么,或少加了点儿什么,这个地址就是论坛根目录与.htacess相对的地址,如果.htacess是放在论坛根目录下的,就只有斜杠,不要乱加什么东西了

此说明主要是给用Discuz的小白提个醒,特别是像我这种手上带钩,不知道什么时候就会在斜杠后面默默写上不该出现字符的人...

推荐(0)
收藏
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)
    收藏
    得到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