Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, estou fazendo uma lojinha Pagseguro e estava tudo certo, até que mandei para o servidor.
Acontece o seguinte erro:
Warning: Cannot use a scalar value as an array in /loja/func_carrinho.php on line 16
Warning: Cannot use a scalar value as an array in /loja/func_carrinho.php on line 17
Warning: Cannot modify header information - headers already sent by (output started at /loja/func_carrinho.php:16) in /loja/func_carrinho.php on line 18
Segue as linhas 16 e 17 do carrinho:
$_SESSION['carrinho']['quant'][$id] = "1";
$_SESSION['carrinho']['produto'][$id] = $id;
Se souber o que pode ser, estou quebrando a cabeça aqui hehe
Obrigado!
Não entendi...
Segue o código:
<?php
session_start();
include "config.php";
if(isset($_GET['acao'])) {
$acao = cleanuserinput($_GET['acao']);
}
else {
header("Location: index.php");
}
if ($acao == "adicionar") {
$id = cleanuserinput($_GET['id']);
if(isset($id)) {
$_SESSION['carrinho']['quant'][$id] = "1";
$_SESSION['carrinho']['produto'][$id] = $id;
header("Location: index.php?pagina=carrinho");
}
else {
header("Location: index.php");
}
}
if ($acao == "deletar") {
$id = cleanuserinput($_GET['id']);
if(isset($id)) {
unset($_SESSION['carrinho']['quant'][$id]);
unset($_SESSION['carrinho']['produto'][$id]);
header("Location: index.php?pagina=carrinho&e=3");
}
else {
header("Location: index.php");
}
}
if ($acao == "remover_todos") {
unset($_SESSION['carrinho']['quant']);
unset($_SESSION['carrinho']['produto']);
header("Location: index.php");
}
if (isset($_GET['alterar'])) {
$id = cleanuserinput($_GET['id']);
$tipo = cleanuserinput($_GET['alterar']);
if(isset($id) AND isset($tipo)) {
$quant = $_SESSION['carrinho']['quant'][$id];
if($tipo == "menos") {
$quant--;
if($quant != 0) {
$_SESSION['carrinho']['quant'][$id] = $quant;
header("Location: index.php?pagina=carrinho");
}
else {
header("Location: index.php?pagina=carrinho&e=1");
}
}
else {
$quant++;
$sql = mysql_query("SELECT * FROM produtos WHERE id = '$id'");
while($l = mysql_fetch_array($sql)) {
$estoque = $l['quant'];
}
if($quant <= $estoque) {
$_SESSION['carrinho']['quant'][$id] = $quant;
header("Location: index.php?pagina=carrinho");
}
else {
header("Location: index.php?pagina=carrinho&e=2");
}
}
}
else {
header("Location: index.php");
}
}
?>Warning: Cannot use a scalar value as an array in /loja/func_carrinho.php on line 16
Você não pode usar uma session como um array $_SESSION['carrinho']['quant'][$id] = "1";
Warning: Cannot use a scalar value as an array in /loja/func_carrinho.php on line 17
Você não pode usar uma session como um array $_SESSION['carrinho']['produto'][$id] = $id;
Warning: Cannot modify header information - headers already sent by (output started at /loja/func_carrinho.php:16) in /loja/func_carrinho.php on line 18
Não pode ter nenhuma saída para o navegador antes da função header location, nem espaços em branco entre tags php. Acho que esse erro só ocorreu por causa dos dois erros acima
Obs: não olhei seu script, apenas interpretei as mensagens de erro
eu ja tive esse tipo de erro
remove todo o espaçamento que deve para o erro
ou poste o seu codigo para avaliação