说明:本文所讲的示例商城是基于X定制和Ecshop所开发的,其他类型网站请根据思路进行开发。
一、修改数据库
表order_info 添加两个新字段(shidai_id、shidai_workid),用来存储来自时代定制的作品信息。
二、修改订单处理程序
打开订单程序文件flow.php
1、在文件的开头 assign_dynamic('flow'); 这句代码下加入下方内容:
//获取来自时代定制的参数并缓存
if (isset($_REQUEST['i']) && isset($_REQUEST['u']))
{
$shidai_id = $_REQUEST['u'];
$shidai_workid = $_REQUEST['i'];
$shidai_img = '//img.sddiy.cn/diagram/work/'.$shidai_workid.'/p0.jpg';
$smarty->assign('shidai_id',$shidai_id);
$smarty->assign('shidai_workid',$shidai_workid);
$smarty->assign('shidai_img',$shidai_img);
setcookie('shidai_id',$shidai_id);
setcookie('shidai_workid',$shidai_workid);
setcookie('shidai_img',$shidai_img);
}
2、搜索action=done,在数组 $order = array()中加入以下内容:
//将来自时代定制的参数写入即将存入数据库的数组中
'shidai_id' => isset($_COOKIE['shidai_id']) ? $_COOKIE['shidai_id'] : null,
'shidai_workid' => isset($_COOKIE['shidai_workid']) ? intval($_COOKIE['shidai_workid']) : null,
'shidai_img' => isset($_COOKIE['shidai_img']) ? $_COOKIE['shidai_img'] : null,
3、在action=done 结尾处加入以下内容:
//清除来自时代定制的参数缓存
setcookie("shidai_id");
setcookie("shidai_img");
setcookie("shidai_workid");
三、修改会员中心配置文件
打开配置文件 lib_transaction_1.php 。
找到 get_user_orders_1()方法,在 $arr[$row['order_id']] = array() 中加入以下内容:
//将作品参数写入即将在前台显示数据的数组中
'shidai_id' => $row['shidai_id'],
'shidai_workid' => $row['shidai_workid'],
'shidai_img' => 'https://img.shidaidiy.com/diagram/work/'.$row['shidai_workid'].'/p0.jpg',
四、修改前台程序文件
打开模板文件 user_transaction.dwt 。
在内容里找到订单遍历语句:
<!--{foreach from=$item.goods_list item=goods name=goods}-->
<div class="goods_desc clearfix {if $smarty.foreach.goods.last}last{/if}"></div>
在上方div内找一合适位置,插入预览设计稿示意图的按钮代码:
//代码插入位置,插入图片的css样式可根据网站需求微调
<!-- {if $item.shidai_img neq null} 商品 -->
<a class="pic" href="/user.php?act=finalized_list" title="查看详情">
<img src="{$item.shidai_img}" alt="查看宝贝详情" width="100" height="100">
</a>
<!-- {/if} -->
五、修改后台订单处理文件
打开文件 order.php。
1、找到 elseif ($_REQUEST['act'] == 'get_goods_info'){},在 if (empty($order_id)){} 后加入以下代码:
//从数据库中查询设计稿作品信息,并取出来
$sql = "SELECT * FROM sd_order_info WHERE order_id=".$order_id;
$res = $db->query($sql);
$row = $db->fetchRow($res);
$shidai_wor
昵称: