我想为我的购物车设置一个cookie。
这是发送信息的表格。
<form action="winkelwagenValidatie.php" method="POST">
Aantal: <input class="form-control" type="number" name="aantal" value="1" min="1"><br>
<input type="hidden" name="id" value="<?php echo($product->getProductId()); ?>">
<button class="button_red" type="submit">Plaats in winkelwagen</button>
</form>
我发送到这个php文件
<?php
if(isset($_POST["id"])){
require_once './DAO/WinkelwagenDAO.php';
WinkelwagenDAO::vermeerderAantalItems(new WinkelwagenItem($_POST["aantal"], $_POST["id"]));
}
但是我收到了这个错误:
警告:无法修改标头信息 - 已发送的标头 (输出始于 /home/supermarktcoppen/public_html/DAO/Verbinding/DatabaseFactory.php:25) 在/home/supermarktcoppen/public_html/DAO/WinkelwagenDAO.php上线 103
所以在第103行的DAO中我有这个:
setcookie("winkelwagen", serialize($winkelwagenItemArray));
一切正常,但我无法设置cookie。
我寻找解决方案,但没有它可以帮助解决我的问题。
答案 0 :(得分:0)
这有助于:
<?php
ob_start();
if(isset($_POST["id"])){
require_once './DAO/WinkelwagenDAO.php';
WinkelwagenDAO::vermeerderAantalItems(new WinkelwagenItem($_POST["aantal"], $_POST["id"]));
header('location: winkelwagen.php');
}else{
header('location: bestellen.php');
}