首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Opencart跟踪

Opencart跟踪
EN

Stack Overflow用户
提问于 2015-03-27 16:28:34
回答 1查看 342关注 0票数 0

我试图在opencart上显示一个产品的跟踪号。

所以一旦下了订单。然后,我给它添加了一个跟踪号。我希望客户能从中看到订单的历史。

代码语言:javascript
复制
// get tracking details
$sql = 'SELECT * FROM '.DB_PREFIX.'order_history'.`tracking_number`;

$query = $this->db->query($sql);
$rates = array();
foreach($query->rows as $result){
    $rates[] = $result;
}

$这个->数据‘跟踪’= $tracking;

这也适用于order.php

这是我写的,但它不工作,我不是专家在php,我涉足它。希望有人能给我指明方向,

因此,这段代码将进入控制器/account/order.php。

然后,在模板上,我假设我可以插入<?php echo $tracking; ?>来显示跟踪设备。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-06-04 13:47:29

顺便说一下,我可以看到这段代码会导致错误,因为您的引号/回退不合适:

代码语言:javascript
复制
$sql = 'SELECT * FROM '.DB_PREFIX.'order_history'.`tracking_number`;

应该更多地遵循以下方针:

代码语言:javascript
复制
$sql = "SELECT `tracking_number` FROM `".DB_PREFIX."order_history`";

并且,假设您想要提取一个特定于订单的跟踪#:

代码语言:javascript
复制
$sql = "SELECT `tracking_number` 
        FROM `".DB_PREFIX."order_history`
        WHERE `order_id` = 'MUFFINS'";

在准备MySQL查询时,请自己使用双引号。在不用转义的情况下,用单引号包装你的东西就更容易了。

至于代码的其余部分,这些不是比率而是跟踪数字。顺便说一句,每个订单都会返回一个跟踪号,您可以将其打包成一行代码,如下所示:

代码语言:javascript
复制
$my_tracking_number = $this->db->query("

    SELECT `tracking_number` 
    FROM `".DB_PREFIX."order_history` 
    WHERE `order_id` = 'MUFFINS'

    ")->row['tracking_number'];

if ( !empty($my_tracking_number) {
    $this->data['tracking_number'] = $my_tracking_number;
}

但是,如果要将多个跟踪编号与订单关联起来,可以在order_history表中插入BLOB列并插入/查询序列化数据,或者完全创建一个单独的表,其中可以将多个行与单个订单ID关联起来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29305571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档