Php Codeigniter购物车助手类-更改;小计;价值

Php Codeigniter购物车助手类-更改;小计;价值,php,codeigniter,shopping-cart,Php,Codeigniter,Shopping Cart,我正在使用CI框架和购物车类。到目前为止,这已经被证明是成功的,直到我的用户决定乱搞它并在总数中增加邮费 所以我想做的是将变量$postage的值添加到subtotal数组中 i、 e小计首先是111.24,然后它进入我的控制器,在小计上加上4,使之成为115.24 我的数据数组如下所示: [id] => 9 [qty] => 1 [price] => 111.24 [price_artwork] => [

我正在使用CI框架和购物车类。到目前为止,这已经被证明是成功的,直到我的用户决定乱搞它并在总数中增加邮费

所以我想做的是将变量$postage的值添加到subtotal数组中

i、 e小计首先是111.24,然后它进入我的控制器,在小计上加上4,使之成为115.24

我的数据数组如下所示:

[id] => 9
        [qty] => 1
        [price] => 111.24
        [price_artwork] => 
        [name] => Lincoln Catherdral
        [print_type] => Canvas
        [postage] => 4
        [file_name] => bbb5359bd6d0dc27ace3f2921460a021
        [file_ext] => .jpg
        [subtotal] => 111.24
控制器中的$data设置如下:

$data = array(
           'id'             => $this->input->post('ARTWORK_id'),
           'qty'            => 1,
           'price'          => $this->input->post('print_cost'),
           'price_artwork'  => $this->input->post('ARTWORK_price'),
           'name'           => $this->input->post('ARTWORK_title'),
           'print_type'     => $this->input->post('print_type'),
           'postage'        => $postage,
           'file_name'      => $this->input->post('ARTWORK_file_name'),
           'file_ext'       => $this->input->post('ARTWORK_file_ext'),
           'subtotal'       => $subtotal
        );
但是,小计只与数组中的[price]值相同

有什么办法可以改变吗


谢谢

我想试试这个,看看它是否有效:

更改:

       'subtotal'       => $subtotal
致:

,在设置数组之前,添加以下行:

$subtotal += $postage;

我会尝试一下,看看它是否有效:

更改:

       'subtotal'       => $subtotal
致:

,在设置数组之前,添加以下行:

$subtotal += $postage;

这似乎不是一个CodeIgniter问题,更像是一个PHP问题,假设我已经正确地掌握了您的目标

问题在于,
$subtotal
是错误的。这不是改变值的类,只是一开始就错了

听上去你只是想在邮资上加上价格?这应该非常简单:
$subtotal=$this->input->post('print_cost')+$this->input->post('ARTWORK_price')+$postage


否则,进行一些简单的调试;在声明数组之前,打印出
$subtotal
字段

这似乎不是一个CodeIgniter问题,更像是一个PHP问题,假设我已经正确地理解了您的意图

问题在于,
$subtotal
是错误的。这不是改变值的类,只是一开始就错了

听上去你只是想在邮资上加上价格?这应该非常简单:
$subtotal=$this->input->post('print_cost')+$this->input->post('ARTWORK_price')+$postage


否则,进行一些简单的调试;在声明数组之前,打印出
$subtotal
字段

你好,尼克,谢谢你的回答。看起来你似乎不能对数组中的“小计”元素做太多的处理?我不知道你的意思是什么?看起来您的问题是,
$subtotal
没有包含
$postage
,这就是为什么我建议将该值添加到
$subtotal
。没用?不幸的是没用。似乎subtotal是在CI会话数据中声明的,而不是在数组中覆盖它。从数组中删除小计位后,仍然会得到包含[subtotal]的数组数据。您很可能看不到正确的代码-您必须找出小计值的来源,才能更改i Nick,感谢您的回答。看起来你似乎不能对数组中的“小计”元素做太多的处理?我不知道你的意思是什么?看起来您的问题是,
$subtotal
没有包含
$postage
,这就是为什么我建议将该值添加到
$subtotal
。没用?不幸的是没用。似乎subtotal是在CI会话数据中声明的,而不是在数组中覆盖它。从数组中删除小计位,仍然会得到包含[subtotal]的数组数据。您很可能看不到正确的代码-您必须找出小计值的来源,才能更改I@mikemike我相信这是一个CI问题。除去数组中的小计,它仍然是由CI购物车类编写的。我对这里的问题感到困惑。如果设置$subtotal时出错,那么设置的值肯定不正确?我已经通过进入CI购物车类并在我的控制器中覆盖它解决了问题。您好@mikemike我相信这是一个CI问题。除去数组中的小计,它仍然是由CI购物车类编写的。我对这里的问题感到困惑。如果设置$subtotal时出错,那么设置的值肯定不正确?我已通过进入CI购物车类并在我的控制器中覆盖它来解决问题。我不会将邮资添加到“subtotal”中。您的小计应仅包括itemxcost,而不包括所有内容的总和+配送。在小计之上计算邮资IMHOI不会将邮资添加到“小计”中您的小计应该只包括itemxcost,而不是所有内容的总和+运费。在小计上计算邮资