PHP:由于 header,无法设置 Cookie
PHP: Cannot setCookie due to header
我想为我的购物车设置一个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-file
<?php
if(isset($_POST["id"])){
require_once './DAO/WinkelwagenDAO.php';
WinkelwagenDAO::vermeerderAantalItems(new WinkelwagenItem($_POST["aantal"], $_POST["id"]));
}
但是我得到这个错误:
Warning: Cannot modify header information - headers already sent by
(output started at
/home/supermarktcoppen/public_html/DAO/Verbinding/DatabaseFactory.php:25)
in /home/supermarktcoppen/public_html/DAO/WinkelwagenDAO.php on line
103
所以在第 103 行的 DAO 中我有这个:
setcookie("winkelwagen", serialize($winkelwagenItemArray));
一切正常,但我无法设置 cookie。
我寻找解决方案,但没有一个可以解决我的问题。
这有帮助:
<?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');
}
我想为我的购物车设置一个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-file
<?php
if(isset($_POST["id"])){
require_once './DAO/WinkelwagenDAO.php';
WinkelwagenDAO::vermeerderAantalItems(new WinkelwagenItem($_POST["aantal"], $_POST["id"]));
}
但是我得到这个错误:
Warning: Cannot modify header information - headers already sent by (output started at /home/supermarktcoppen/public_html/DAO/Verbinding/DatabaseFactory.php:25) in /home/supermarktcoppen/public_html/DAO/WinkelwagenDAO.php on line 103
所以在第 103 行的 DAO 中我有这个:
setcookie("winkelwagen", serialize($winkelwagenItemArray));
一切正常,但我无法设置 cookie。
我寻找解决方案,但没有一个可以解决我的问题。
这有帮助:
<?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');
}