ecshop商城添加“金额+积分”的兑换功能

积分商城里添加个“金额+积分”的兑换功能,(高手略过)虽然没有在商品详情页的“金额+积分”功能那么实用,但是用这个应急一下下也是可以考虑考虑的。呵呵……
 
   好吧,进入正题:
 
 1、执行SQL语句:ALTER TABLE `ecs_exchange_goods` ADD `goods_price` DECIMAL (10,2) default 0.00 NOT NULL
 
 2、修改admin/templates/exchange_goods_info.htm页:找到
“<td><input type="text" name="exchange_integral" maxlength="60" size="20" value="{$goods.exchange_integral}" />{$lang.require_field}<br /><span class="notice-span" {if $help_open}style="display:block" {else} style="display:none" {/if} id="noticepackagePrice">{$lang.notice_integral}</span></td>”
在下面添加:
<!--积分商城加上金额二次开发-->
 
   <tr>
 
     <td class="narrow-label"><a href="javascript:showNotice('noticepackagePrice');" title="{$lang.form_notice}"><img src="images/notice.gif" width="16" height="16" border="0" alt="{$lang.form_notice}"></a>{$lang.goods_price}</td>
 
     <td><input type="text" name="goods_price" maxlength="60" size="20" value="{$goods.goods_price}" />{$lang.require_field}<br /><span class="notice-span" {if $help_open}style="display:block" {else} style="display:none" {/if} id="noticepackagePrice">{$lang.notice_price}</span></td>
 
   </tr>
 
   <!--end-->
3、修改admin/templates/exchange_goods_info.htm页,找到:
<th><a href="javascript:listTable.sort('exchange_integral'); ">{$lang.exchange_integral}</a>{$sort_exchange_integral}</th>
在下面添加:
<!--积分商城加上金额二次开发-->
 
   <th><a href="javascript:listTable.sort('exchange_price'); ">{$lang.goods_price}</a>{$sort_exchange_price}</th>
 
   <!--end-->
再找到:
<td align="center"><span onclick="listTable.edit(this, 'edit_exchange_integral', {$list.goods_id})">{$list.exchange_integral}</span></td> 在它下面添加:
<!--积分商城加上金额二次开发-->
 
   <td align="center"><span onclick="listTable.edit(this, 'edit_exchange_price', {$list.goods_id})">{$list.goods_price}</span></td>
 
   <!--end-->
4、修改admin/exchange_goods.php页:找到
$sql = "INSERT INTO ".$ecs->table('exchange_goods')."(goods_id, exchange_integral, goods_price, 
 is_exchange, is_hot) ".
 
           "VALUES ('$_POST[goods_id]', '$_POST[exchange_integral]', '$_POST[goods_price]', '$_POST[is_exchange]', '$_POST[is_hot]')"
注意上面是添加了:goods_price, 和 '$_POST[goods_price]',的;
找到:$sql = "SELECT eg.goods_id, eg.exchange_integral,eg.is_exchange, eg.is_hot,eg.goods_price, g.goods_name ".
注意上面是添加了eg.goods_price的;
找到:if ($exc->edit("exchange_integral='$_POST[exchange_integral]',goods_price='$_POST[goods_price]', is_exchange='$_POST[is_exchange]', is_hot='$_POST[is_hot]' ", $_POST['goods_id']))里面也是添加了goods_price='$_POST[goods_price]'的。
最后找到elseif ($_REQUEST['act'] == 'edit_exchange_integral') 这个条件语句,在这个条件语句的下面添加一个条件语句:
//积分商城二次开发添加
elseif ($_REQUEST['act'] == 'edit_exchange_price')
{
 
   check_authz_json('exchange_goods');

 
   $id                = intval($_POST['id']);
 
   $exchange_integral = floatval($_POST['val']);

 
   if ($exchange_integral < 0 || $exchange_integral == 0 && $_POST['val'] != "$goods_price")
 
   {
 
       make_json_error($_LANG['exchange_integral_invalid']);
 
   }
 
   else
 
   {
 
       if ($exc->edit("goods_price = '$exchange_integral'", $id))
 
       {
 
           clear_cache_files();
 
           admin_log($id, 'edit', 'goods_price');
 
           make_json_result(stripslashes($exchange_integral));
 
       }
 
       else
 
       {
 
           make_json_error($db->error());
 
       }
 
   }
}
//二次开发结束
5、修改根目录下的exchange.php页面
找到'market_price' 
  => $goods['market_price'],在它的下面把'goods_price'    => 0 改成:'goods_price'    => $goods['goods_price'],
找到 
  $sql =  'SELECT g.goods_id, g.goods_name, g.goods_name_style, eg.exchange_integral ' .在最后添加上eg.goods_price;
再找到:$sql = 'SELECT g.*, c.measure_unit, b.brand_id, b.brand_name AS goods_brand,eg.exchange_integral eg.is_exchange ' .在后面添加上eg.goods_price;
6、修改exchange_goods.dwt页面:找到
<li class="clearfix">
 
           <dd>
 
           <strong>{$lang.exchange_integral}</strong><font class="shop">{$goods.exchange_integral}</font><br />
 
           </dd>
 
         </li>
在下面添加:
<!--积分商城二次开发-->
 
         <li class="clearfix">
 
           <dd>
 
           <strong>{$lang.exchange_price}</strong><font class="shop">
 
           <!--{if $goods.goods_price >0}--> {$goods.goods_price}元+<!--{/if}-->{$goods.exchange_integral}积分</font><br />
 
           </dd>
 
         </li>
 
         <!--二次开发结束-->
最后一步是在语言文件夹中的languages/zh_cn/common.php 的$_LANG['exchange_integral'] = '消耗积分:';
下面添加:$_LANG['exchange_price'] = '积分套餐:';
与 /admin/exchange_goods.php中的$_LANG['exchange_integral'] = '使用积分值';
下面加上:$_LANG['goods_price'] = '还需要的价格';

后台界面以及前台演示:

ecshop商城添加“金额+积分”的兑换功能_第1张图片

前台列表以及详情页面

ecshop商城添加“金额+积分”的兑换功能_第2张图片

ecshop商城添加“金额+积分”的兑换功能_第3张图片

只是稍微修改下样式就可以了


你可能感兴趣的:(ecshop,积分+金钱,积分兑换)