Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vitor Cazelatto

Atualizar Valor de string PHP com AJAX/JS

Recommended Posts

Estou fazendo um carrinho de compras e preciso que quando a pessoa alterasse a quantidade do produto, seu sub total e total, alterassem automaticamente!

Gera os produtos na tabela, que estão na $_SESSION['carrinho']

<?php

if (count($_SESSION['carrinho']) == 0) {
    echo "<tr><td colspan=\"5\">Não há produtos no carrinho</td></tr>";
} else {
    require_once 'connect.php';
    $i = new Connect();
    if ($i->getConnection()) {
        $PTOTAL = 0;
        foreach ($_SESSION['carrinho'] as $id => $qtd) {
            $result = $i->execute("SELECT * FROM produtos WHERE id='" . $id . "';");
            $assoc = mysql_fetch_assoc($result);

            $id = $assoc['id'];
            $PNOME = $assoc['nome'];
            $PIMG = $assoc['imagem'];
            $PVALOR = $assoc['valor'];
            $PSUB = $PVALOR * $qtd;
            $PTOTAL += $PSUB;

            $len = strlen($PIMG);
            $nPIMG = substr($PIMG, 3, $len);

            echo "<tr>";
            echo "<td>
                                                    <img src=\"$nPIMG\" class=\"img-responsive alignleft\" width=\"65\" alt=\"\">
                                                    <a class=\"cart_title\" href=\"#\">$PNOME</a>
                                                 </td>";
            echo "<td><a href=\"#\" class=\"price\">R$" . $PVALOR . "</a></td>";
            echo "<td><input id=\"prod\" onkeypress='return SomenteNumero(event)' type=\"text\" size=\"3\" name=\"prod[" . $id . "]\" value=\"$qtd\" data-id=\"$id\" data-valor=\"$PVALOR\"</td>";
            echo "<td id=\"subtotal\" class=\"price2\">R$" . $PSUB . "</td>";
            echo "<td><a href=\"?acao=del&id=$id\" class=\"remove\" title=\"Remover este item\"></a></td>";
            echo "</tr>";
        }
    }
}
?>

Exibe o total fora da tabela:

<div class="col-md-6">
    <div class="title">
        <h2>Total</h2>
    </div>
    <div class="box">
        <span class="pull-left">Total</span>
        <span class="pull-right"><?php echo "R$" . $PTOTAL; ?></span>
        <br>
    </div>
</div>

Valeeeu!
OBS: Não tenho muita noção com js/ajax

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá! Eu colocaria o Total dentro de uma Sessão antes da requisição Ajax. Ai segue a lógica no JS:

- Criar uma função no Javascript, que com uma requisição Ajax, busque num arquivo PHP a sessão do total, e mostre numa determinada Div.

- Como ela é uma função, você pode chamar ela quando for adicionar itens no Carrinho (Claro depois de add).

 

Tente pesquisar Ajax no Google, mas abaixo separei uns artigos para você:

http://stackoverflow.com/questions/5004233/jquery-ajax-post-example-with-php

http://qatrix.com/api/ajax

 

Boa Sorte ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.