将Variable Array添加到Cookie然后收到错误

时间:2012-02-15 14:18:32

标签: php arrays shopping-cart setcookie

输入一些变量后,

PHP代码:

$CartItem = array(
        'itemID' => $itemID,
        'ProductName' => $ProductName,
        'Option' => $Option,
        'Quantity' => $Quantity,
        'Price' => $Price,
        'Total' => $Total
    );

setcookie('CartItem', $CartItem, null);

输出错误:

Warning: setcookie() expects parameter 2 to be string, array given in /Users/user/Sites/app/addtocart.php on line 46

2 个答案:

答案 0 :(得分:0)

我们可以在cookie中一次添加一个变量 这样做

$CartItem[] = array(
        'itemID' => $itemID,
        'ProductName' => $ProductName,
        'Option' => $Option,
        'Quantity' => $Quantity,
        'Price' => $Price,
        'Total' => $Total
    );

foreach($CartItem as $key=>$value)
{
setcookie($key, $value, null);

}

答案 1 :(得分:0)

如错误所示,cookie数据必须是字符串格式。更重要的是,您不应将实际数据存储在cookie中,因为用户可以编辑它们。

由于您使用的是PHP,因此您可以使用会话...您可以使用session_start()来设置您不需要管理的cookie,然后您可以在{{1变量服务器端。

见这里:http://php.net/manual/en/function.session-start.php

请注意,必须在每页输出任何内容之前调用session_start()。

相关问题