0
I need a JS variable that picks up the result in a . load Jquery from a php file.
Jquery
$.ajax({
type: "POST",
url: "_required/sessaoCarrinho.php",
data: {idProduto:idCampo, novaQuantidade: novaQuantidade},
success: function(data){
var subTotal = data;
return false;
}
});
alert(subTotal);
$(".subTotal").html(subTotal.toFixed(2));
$(".totalCarrinho").html(subTotal.toFixed(2));
php
<?php
session_start();
$idProduto = $_POST["idProduto"];
$novaQuantidade = $_POST["novaQuantidade"];
require_once "../../_controlls/_conexao/Conexao.php";
require_once "../../_controlls/_models/Produtos.php";
require_once "../../_controlls/_daos/ProdutosDao.php";
require_once "../../_controlls/_util/PhpUtil.php";
require_once "../../_controlls/_util/Carrinho.php";
$connection = new Conexao();
$conexao = $connection->abreConexao();
$produtosDao = new ProdutosDao($conexao);
$phpUtil = new PhpUtil();
$carrinho = new Carrinho($produtosDao, $phpUtil);
$novoProduto = $produtosDao->pesquisaProdutoId($_POST["idProduto"]);
foreach ($_SESSION["carrinho"] as $key=>$produtoC) {
if($produtoC[idProdutos] == $novoProduto->getIdProdutos()) {
$achou = true;
$chave = $key;
$estoque = $novoProduto->getEstoque();
break;
}
}
if($achou == true) {
if ($estoque > $_SESSION["carrinho"][$chave]["quantidade"]) {
$_SESSION["carrinho"][$chave]["quantidade"] = $novaQuantidade;
}
}
$subTotal = $carrinho->subTotal();
echo $subTotal;
?>
What I’m doing wrong that variable subtotal
in the JQuery
just enough not defined
I’ve tried that too in php but it didn’t work
$subTotal = $carrinho->subTotal();
echo "<script>var subTotal=".$subTotal."</script>";
I may be ignorant, but try => die(json_encode(['subtotal' => $subtotal])
– LucaoA
Try the
alert(subTotal);
inside the ajax Success– Miguel
Cart.js:28 Uncaught Referenceerror: subtotal is not defined
– Carlos Rocha
json_encode(['subtotal' => $subtotal] is an array. It gives error in the form of array placement
– Carlos Rocha
@Carlosrocha left an answer to your question.
– LucaoA
yes, I already tested and left a comment: almost there!
– Carlos Rocha