Php 在没有警告的情况下将会话_start()与AJAX一起使用
我使用AJAX调用php脚本,将“+1”添加到某个产品中,并将其保存在购物车中。看起来一切正常,但我有以下警告:Php 在没有警告的情况下将会话_start()与AJAX一起使用,php,ajax,session,Php,Ajax,Session,我使用AJAX调用php脚本,将“+1”添加到某个产品中,并将其保存在购物车中。看起来一切正常,但我有以下警告: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent 我的代码如下: <?php session_start(); if (!isset($_SESSION["product1"])) { $_SESSION
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
我的代码如下:
<?php
session_start();
if (!isset($_SESSION["product1"])) {
$_SESSION["product1"] = 0;
}
if (!isset($_SESSION["product2"])) {
$_SESSION["product2"] = 0;
}
var_dump($_SESSION);
session_write_close();
?>
<!doctype html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="js/ajax.js"></script>
</head>
<body>
<p id="add1">Prod 1: <?php echo $_SESSION["product1"]; ?></p>
<p id="add2">Prod 2: <?php echo $_SESSION["product2"]; ?></p>
<li><a href="#" onclick=ajax("add1")> Add product1 </a><br></li>
<li><a href="#" onclick=ajax("add2")> Add product2 </a><br></li>
</body>
</html>
add1.php与add2.php类似:
<?php
session_start();
$_SESSION["product1"] += 1;
$response = 'Vinho 1: ' . $_SESSION["product1"];
echo $response;
session_write_close();
?>
我做错了什么?我只想继续这个环节。我试着把session\u write\u close()去掉,但我还是有同样的方法。使用@session_start()解决了这个问题,但我认为它只是隐藏了警告,对吗
顺便问一下,购物车的最佳实践是什么?我应该用饼干吗?我刚刚开始,就我所知,会话只在您不关闭浏览器的情况下保存数据,所以我想最好将所有数据存储在cookie中几天,并在开始时检查是否有任何cookie集。如果有人能给我举一些使用简单cookies的好例子(如果有任何缺点),请告诉我。可能,在你的
之前,你有一些字符,我只是过度复杂了。问题是之前有一个标签,@johncode所指示的链接真是太棒了!谢谢。哦,上帝。。。我现在很惭愧。我只是没有正确地查看2 add.php文件,当我第100次检查时,我在打开php之前看到了一个选项卡。没关系!这是一生中只发生一次的错误之一:)
<?php
session_start();
$_SESSION["product1"] += 1;
$response = 'Vinho 1: ' . $_SESSION["product1"];
echo $response;
session_write_close();
?>