无法使用codeigniter中的某些字符将产品添加到购物车

时间:2013-10-30 21:55:20

标签: codeigniter cart

我对CI购物车有一个奇怪的问题。我无法将商品添加到包含()/等字符的购物车中。我正在使用2.1.4版。

这是我在控制器中的代码:

public function add_to_cart() {
    $id = $this->uri->segment(3);
    $product = $this->product_model->get_product($id);

    $item['id']=$product->id;
    $item['name']= $product->name;
    $item['price']=$product->price;
    $item['qty']=1;

    $this->cart->insert($item);

    redirect('cart/view_cart');

}

和模型

public function get_product($id) {
    return $this->db->get_where('products',array('id'=>$id))->row();
}

除非产品名称包含我上面提到的那些字符,否则它可以正常工作。有人经历过这样的事情并知道解决方案吗?请分享。谢谢。

1 个答案:

答案 0 :(得分:0)

如果是编码问题,您可以通过原始

解决此问题
    $str = "hi (hello) / merhaba";
    $addCart = rawurlencode($str);
    $decodeCart = rawurldecode($str);

    echo $str . '<br />' .  $addCart . '<br />' .  $decodeCart;

使用编码将产品添加到购物车,然后在需要时,您可以解码。