10
Well, I have the function below that, with Jquery, I update the cart values display labels.
Everything works:
function add(_quant, _preco, _total, _estoque) {
quantidade = parseInt($("#"+_quant).val());
estoque = parseInt($("#"+_estoque).val());
preco = parseFloat($("#"+_preco).val());
novaQuantidade = quantidade + 1;
if(novaQuantidade <= estoque) {
if(novaQuantidade == 0) {
alert("Quatidade não por ser 0");
} else {
total = novaQuantidade * preco;
$("#"+_quant).val(novaQuantidade) ;
$("#"+_total).html(total.toFixed(2));
$(".totalCarrinho").html(total.toFixed(2));
$(body).load('_required/sessaoCarrinho.php?idProduto=' + _quant + '&novaQuantidade=' + novaQuantidade);
}
} else {
alert("Quatidade escolhida maior que estoque");
}
}
The problem is that I am not able to update also in php Session.
I’m trying like this:
$(body).load('_required/sessaoCarrinho.php?idProduto=' + _quant + '&novaQuantidade=' + novaQuantidade);
And in php like this:
$idProduto = $_GET["idProduto"];
$novaQuantidade = $_GET["novaQuantidade"];
foreach ($_SESSION["carrinho"] as $key=>$produtoC) {
if($produtoC[$idProduto] == $novoProduto->getIdProdutos()) {
$achou = true;
$chave = $key;
$estoque = $novoProduto->getEstoque();
break;
}
}
if($achou == true) {
if ($estoque > $_SESSION["carrinho"][$chave]["quantidade"]) {
$_SESSION["carrinho"][$chave]["quantidade"] = $novaQuantidade;
}
}
But Session is not being updated.
What am I doing wrong?
To update a session, I recommend killing the previous session... so that it cleans and recreates the session. use
unset($_SESSION['carrinho']);
, don’t forget to put in the header:session_start();
– Ivan Ferrer
In the php code you quoted is not present the function
session_start()
, but as the code is apparently not complete it is worth giving a check on the above lines if this function has been called. Without it changes in session will not be persisted.– Diego Martins
the "$(body). load(...);" command indicates that you want to replace all body content with the load return. Use the "$. get(...);" to make the request without loading the return on the body...
– Jader A. Wagner