Ir para conteúdo
Fórum Script Brasil

Clayton

Membros
  • Total de itens

    31
  • Registro em

  • Última visita

Posts postados por Clayton

  1. Boa tarde amigos , como podem ver na imagem preciso da ajuda de vocês para alinhar minha vitrine e fixar a paginação embaixo dela,eu gostaria que houvesse uma quebra de linha a cada quatro registros e tivesse scroll automatico para descer a tela. agradeço a ajuda de vocês.

    eis o codigo da paginacao:

    <?php
    require_once ('./funcao/conecta.php');
    $conn = conecta();
    $sql = $conn->prepare("SELECT * FROM `loja`.`categorias` ORDER BY nome_categoria ASC");
    $sql->execute();
    $sql->setFetchMode(PDO::FETCH_ASSOC);
    while ($linha = $sql->fetch()) {
    $categoriaid = $linha['id_categoria'];
    $nomecategoria = $linha['nome_categoria'];
    echo'<li><a href = "index.php?idCat=' . $categoriaid . '">' . $nomecategoria . '</a></li>';
    }
    echo '</div></div>';
    ?>
    </ul>
    </nav>
    <div class="main">
    <div id ="content">
        <?php
    if (isset($_GET['idCat'])) {
            $idCat = $_GET['idCat'];
    require_once ('./funcao/conecta.php');
    $conn = conecta();
    echo'<meta charset="utf-8">';
    $i=1;
    $limite = 10;
            $pg = isset($_GET['pg']) ? (int) $_GET['pg'] : 1;
            $inicio = ($pg * $limite) - $limite;
            $busca = $conn->prepare("SELECT * FROM `produtos` WHERE `id_categoria` = " . $idCat . " ORDER BY `id` LIMIT $inicio,$limite"); //Aqui eu filtro os produtos de determinada categoria
            $busca->execute();
                    echo'<div class ="produtos">';
     while ($linha = $busca->fetch(PDO::FETCH_ASSOC)) {
         echo '<div style="float: left"><img src="' . $linha['foto'] . '"></a><a href="./shop.php?acao=add&id=' . $linha['id'] . '"></div>';
    if( $i == 4 ) // sempre ter uma quebra de linha a cada 10 registros
        {
            echo "<br>";
    }
    $i++;
            }
    }

    ?>

    as imagens estao num top de 450px.

    Captura de tela de 2016-09-06 13:55:26.png

  2. Olá amigos como podem ver na foto abaixo não consigo fazer a paginação ficar no fim da tela e quando movo a tela fica tudo embolado, alguém pode ajudar?eis o código de exibir os produtos:

    <div class ="container">
    <div class ="content">
    <meta charset='utf-8'>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <table width="100%" height="0" cellspacing="60" cellpadding="60">

        <?php
            if (isset($_GET['idCat'])) {
            $idCat = $_GET['idCat'];
            require_once ('./funcao/conecta.php');
            $conn = conecta();
            $i = 1;
            $limite = 10;
            $pg = isset($_GET['pg']) ? (int) $_GET['pg'] : 1;
            $inicio = ($pg * $limite) - $limite;
            $busca = $conn->prepare("SELECT * FROM `produtos` WHERE `id_categoria` = " . $idCat . " ORDER BY `id` LIMIT $inicio,$limite"); //Aqui eu filtro os produtos de determinada categoria
            $busca->execute();
              while ($linha = $busca->fetch(PDO::FETCH_ASSOC)) {
              echo'<div class ="item">';
              echo '<div align ="left"><img src= "'.$linha['foto'].'"><br></div>';
              echo'<br>';
              echo'</div>';


                if ($i % 5 == 0) {
                    echo "<tr>";
                }
                $i++;
            }
            echo'<div class="clear"> </div>';

    //calcula o total de paginas a serem exibidas
            $query = $conn->prepare("SELECT * FROM produtos WHERE id_categoria = $idCat");
            $query->execute();
            $result = $query->fetchAll(PDO::FETCH_ASSOC);
            $total = count($result);
            $qtdPag = ceil($total / $limite);
    //Cria os links para navegação das paginas
            $categoriaAtual = 'idCat=' . $idCat;
            echo ' <div class = "paginacao"><div align = "center" ><a href="?' . $categoriaAtual . '&pg=1">Primeira Página</a>  ';
            for ($i = 1; $i <= $qtdPag; $i++) {

                if ($i == $pg) {
                    echo $i;
                } else {
                    echo "<a href='index.php?$categoriaAtual&pg=$i'>" . $i . "</a>";
                }
            }

            echo "   <a href=\"?$categoriaAtual&pg=$qtdPag\">Última Página</a> ";
        }
        ?>
      </div>

    e o código da paginação:

    .paginacao {
      position:relative;
      display:block;
      font: bold 15px Arial, times, Serif;
      padding: 30px;
    }

    .paginacao a {
    display: inline;
    text-align: center;
    border:3px solid #0b40eb;
    color: #0b40eb;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    border-radius: 100px;
    padding:10px 15px;
    transition: all 0.3s linear;
    text-decoration: none;
    }
    .paginacao a:hover, div.digg a:active {
    color: #638425;
    background: #f1ffd6;
    border: 1px solid #85bd1e;
    }
    .paginacao span.atual {
    padding: 2px 5px 2px 5px;
    margin: 2px;
    border: 1px solid #000099;
    font-weight: bold;
    background-color: #000099;
    color: #FFF;
    }
    .paginacao span.desabilitado {
    padding: 2px 5px 2px 5px;
    margin: 2px;
    border: 1px solid #EEE;
    color: #DDD;
    }

    muito obrigado.

    Screenshot at 2016-07-23 12:11:48.png

    Screenshot at 2016-07-23 12:05:08.png

  3. Bom dia tenho um carrinho onde o cálculo da quantidade é feito pelo js:


    $(document).ready(function (e) {
        $('input').change(function (e) {
            id = $(this).attr('rel');
            $index = this.value;
            $preço = $('font#preço'+id).html().replace("R$ ",'');
            console.log($preço);
            $val = ($preço*$index).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');;
            $('font#sub'+id).html('R$ '+$val);
     clearInterval(timer);

            });
            });


    e o php:

      $conn = conecta();
      foreach ($_SESSION['shop'] as $id => $qtd) {
                                 $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                 $cart->setFetchMode(PDO::FETCH_ASSOC);
                                 $cart->execute();
                                 while ($linha = $cart->fetch()) {
                                       $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);
                                       $_SESSION['preço'] = $linha['preço'];
                                       $sub = number_format($linha['preço'] * $qtd, 2, ',', '.');
                                       $_SESSION['sub'] = number_format($linha['preço']* $qtd, 2, ',', '.');
                                       $total = number_format($total,2,".",".");
                                       $total += $linha['preço'] * $qtd;
                                       echo '<tr>';
            echo '<td><img src = "' . $foto . ' " width = "120px"</td>';
            echo '<td><strong><font size="4" color="black">'.$nome.'</td>';
            echo '<td><strong><font size="4" color="black">'.$descricao.'</td>';
            echo '<td><strong><font size="4" color="black">'.$tamanho.'</td>';
            echo '<td><strong><font size="4" color="black">'.$cor.'</td>';
            echo' <td><strong><span class="preço"><font size="4" color="black" id="preço'.$linha['id'].'">R$ ' . $_SESSION['preço'] . '</font></strong></span></td>';
            echo'<td><input rel="'.$linha['id'].'" type="number" step="1" min="1" style="width:50px; font-family: Tahoma; font-size: 20px;" name="prod[' . $id . ']" value="' . $qtd . '"></td>';
            echo '<td><div id="total" ><strong><font size="5" color="black" id="sub'.$linha['id'].'">R$ ' . $_SESSION['sub'] . '</font></strong></div></td>';
            echo '<td align = "center" colspan = "9"><a href="?acao=del&id='.$id.'"><img src="./imagens/remover.png" width="70" height="70" ></td>';
            echo '</tr>';

    }
    echo '<tr>';
    }
    }
    ?>

    O que acontece é que ao acionar o botao para aumentar o produto,o valor aumenta normalmente,mas quando envio os valores para outra página pela session, ele só traz o valor inicial do produto.gostaria que o calculo total fosse correto, e depois aplicar o valor do total ($ total ou $sub ??) na rotina abaixo:

    // DADOS DO BOLETO PARA O SEU CLIENTE
    $dias_de_prazo_para_pagamento = 5;
    $taxa_boleto = 2.95;
    $data_venc = date("d/m/Y", time() + ($dias_de_prazo_para_pagamento * 86400));  // Prazo de X dias OU informe data: "13/04/2006";
    $valor_cobrado = $linha['preço']* $qtd; // <-AQUI EU QUERO COLOCAR O VALOR TOTAL ANTERIOR, PARA GERAR O BOLETO.
    $valor_cobrado = str_replace(",", ".",$valor_cobrado);
    $valor_boleto=number_format($valor_cobrado+$taxa_boleto, 2, ',', '');

    Alguém pode me ajudar pois não conheço javascript.

     

  4. Olá ao tentar conectar o bd no servidor recebo essa mensagem :

    Warning: include(/var/www/html/showdospes.com.br/web../../funcao/conecta.php): failed to open stream: No such file or directory in /var/www/html/showdospes.com.br/web/index.php on line 74

    Warning: include(): Failed opening '/var/www/html/showdospes.com.br/web../../funcao/conecta.php' for inclusion (include_path='.:/usr/share/pear') in /var/www/html/showdospes.com.br/web/index.php on line 74

    Fatal error: Call to undefined function conecta() in /var/www/html/showdospes.com.br/web/index.php on line 75

    mas local ele funciona normalmente:

    <?php
    function conecta( ){
      if(!defined("HOST")){
         define('HOST','http://showdospes.com.br');
      }
      if(!defined("BD")){
         define('BD','bolabola');
      }
      if(!defined("USER")){
         define('USER','eueueu');
      }
      if(!defined("PASS")){
         define('PASS',' 123456');
      }
    try {
    $conn = new PDO('mysql:host='.HOST.';dbname='.BD.'', ''.USER.'', ''.PASS.'');
    $conn->exec("SET NAMES 'utf8'");
    }
    catch(PDOException $erro){
    echo $erro->getMessage();
    }
    return $conn;
    }

    Onde está o erro ?

  5. Bom dia ,meu carrinho de compras  ao escolher 4 produtos, ao atualizar ele volta pra 2 produtos alguém pode ajudar a corrigir. eis os códigos:

    //adiciona produto

    if (isset($_GET['acao']) && $_GET['acao'] == 'add' ) {
         $id = intval($_GET['id']);
         if (!(isset($_SESSION['shop'][$id])) || empty($_SESSION['shop'][$id])) {
             $_SESSION['shop'][$id] = 1;
         } else {
             $_SESSION['shop'][$id] += 1;
         }
     }

    //altera a quantidade de produtos
    //Se existir $_POST['prod'] ent�o come�a..
    if (isset($_POST['atualizar'])){
        if ($_GET['acao'] == 'atualizar') {

            if (is_array($_POST['prod'])) {
                foreach ($_POST['prod'] as $id => $qtd) {
                    $id = intval($id);
                    $qtd = intval($qtd);
                    if (!empty($qtd) || $qtd <> 0) {
                        $_SESSION['shop'][$id] = $qtd;
                    } else {
                        unset($_SESSION['shop'][$id]);
                    }
                }
            }
        }
    }

    e aqui o input da quantidade:  echo'<td><input rel="'.$linha['id'].'" type="number" step="1" min="1" style="width:50px; font-family: Tahoma; font-size: 20px;" name="prod[' . $id . ']" value="' . $qtd . '"></td>';

    e o js :


    $(document).ready(function (e) {
        $('input').change(function (e) {
            id = $(this).attr('rel');
            $index = this.value;
            $preço = $('font#preço'+id).html().replace("R$ ",'');
            console.log($preço);
            $val = ($preço*$index).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');;
            $('font#sub'+id).html('R$ '+$val);
     clearInterval(timer);

            });
            });


    gostaria de uma solução, pois só falta isso pra finalizar o projeto.

  6. Como faço para conectar em outro banco de dados usando a conexão que já tenho e funciona perfeitamente em outro banco , quando mudo apenas o nome da conexão aparece:

    Notice: Undefined variable: conn2 in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\loja\funcao\conecta2.php on line 22

    eis o codigo:

    <?php
    function conecta2( ){
      if(!defined("HOST")){
         define('HOST','localhost');
      }
      if(!defined("BD")){
         define('BD','cadastro');
      }
      if(!defined("USER")){
         define('USER','root');
      }
      if(!defined("PASS")){
         define('PASS','');
      }
    try {
    $conn2 = new PDO('mysql:host='.HOST.';dbname='.BD.'', ''.USER.'', ''.PASS.'');
    $conn2->exec("SET NAMES 'utf8'");
    }
    catch(PDOException $erro){
    echo $erro->getMessage();
    }
    return $conn2; // esta é a linha 22
    }

     

     

  7. Olá amigos preciso da ajuda de vocês , pois o meu sistema não está fazendo o cálculo dos produtos corretamente( está dando pra menos) abaixo o js que faz o cálculo:


    $(document).ready(function (e) {
        $('input').change(function (e) {
            id = $(this).attr('rel');
            $index = this.value;
            $preço = $('font#preço'+id).html().replace("R$ ",'');
            console.log($preço);
            $val = ($preço*$index).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');;
            $('font#sub'+id).html('R$ '+$val);
     clearInterval(timer);

            });
            });


    e o script que finaliza a compra:

    <?php
    include_once("../funcao/conecta.php");
          session_start();

          if(!isset($_SESSION['shop'])){
             $_SESSION['shop'] = array();
          }
    ?>
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Endereço e Forma de pagamento</title>
    <script type="text/javascript" src="../js/jquery-1.5.2.min.js"></script>
    <script type="text/javascript">
    $(document).ready (function() {

      $("#cardradius") .click (function()  {

          $(".card") .css ("visibility" ,"visible");
           $(".boleto") .css ("visibility" ,"hidden");
            $(".mercado") .css ("visibility" ,"hidden");
             $(".pagseguro") .css ("visibility" ,"hidden");
      });
       $("#boletoradius") .click (function()  {

          $(".card") .css ("visibility" ,"hidden");
           $(".boleto") .css ("visibility" ,"visible");
           $(".mercado") .css ("visibility" ,"hidden");
             $(".pagseguro") .css ("visibility" ,"hidden");
      });
         $("#mercadoradius") .click (function()  {

          $(".card") .css ("visibility" ,"hidden");
           $(".boleto") .css ("visibility" ,"hidden");
           $(".mercado") .css ("visibility" ,"visible");
             $(".pagseguro") .css ("visibility" ,"hidden");
      })
         $("#pagseguroradius") .click (function()  {

          $(".card") .css ("visibility" ,"hidden");
           $(".boleto") .css ("visibility" ,"hidden");
           $(".mercado") .css ("visibility" ,"hidden");
             $(".pagseguro") .css ("visibility" ,"visible");
      })
      });
    </script>
    </head>
    <body>
    <div id="principal">
    <div id="conteudo">
    <div class="progressend"><div align ="center"><img src="../imagens/13.png" class="progend" ></div>
    <div class="textprogress"> <li>IDENTIFICAÇÃO</li><li>ENTREGA E PAGAMENTO</li><li>CONFIRMAÇÃO</li> </div>
    <div class="enderecamento">
    <div class="textoprog"> <h2>1</h2>&nbsp;&nbsp; Endereço de entrega e cobrança </div>

    <ul><?php
    if (isset($_POST['cep-destino'])){
        // Peso total do pacote em Quilos, caso seja menos de 1Kg, ex.: 300g, coloque 0.300
    define('PESO',7.00);
    define('EMBALAGEM',2.00);

    // Valor adicional no envio como custo de embalagem.
    define('COMPRIMENTO',60);
    define('ALTURA',15);
    define('LARGURA',20);

    if($_POST) {
    // Código do Serviço que deseja calcular, veja tabela acima:
    if ($_POST['servico']) {
    $cod_servico = $_POST['servico'];
    }
    // CEP de Origem, em geral o CEP da Loja
    $cep_origem = '13360-000';

    // CEP de Destino, você pode passar esse CEP por GET ou POST vindo de um formulário
    $cep_destino = $_POST['cep-destino'];
    $cep_destino = @eregi_replace("([^0-9])","",$cep_destino);

    // URL de Consulta dos Correios
    $correios = "http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?StrRetorno=xml&nCdServico={$cod_servico}&nVlPeso=" . PESO . "&sCepOrigem={$cep_origem}&sCepDestino={$cep_destino}&nCdFormato=1&nVlComprimento=" . COMPRIMENTO . "&nVlAltura=" . ALTURA . "&nVlLargura=" . LARGURA;

    // Capta as informações da página dos Correios
    $correios_info = file($correios);

    // Processa as informações vindas do site dos correios em um Array
    foreach($correios_info as $info) {

    // Busca a informação do Preço da Postagem
    if(preg_match("/\<Valor>(.*)\<\/Valor>/",$info,$tarifa)) {

    $frete = $tarifa[1] + EMBALAGEM;
    }
    if(preg_match("/\<PrazoEntrega>(.*)\<\/PrazoEntrega>/",$info,$PrazoEntrega)) {
    $PrazoEntrega = $PrazoEntrega[1];
    }
    }

    // Neste exemplo estamos usando apenas PAC e SEDEX. Caso seja necessário, utilize outras opções.
    switch ($cod_servico) {
    case 41106:
    $nome_servico = " PAC ";
    break;
    case 40010:
    $nome_servico = " SEDEX ";
    break;
    }
    }
    }
    ?>
    <form id="form-pesquisa-repasse" action="" method="post" class="formMain formSearch wsizep100" >
    <fieldset>
    <legend>Pesquisar valor do frete!</legend>
    <label for="servico" class="wsize015">
    <span class="nameField">Envio</span>
    <select id="servico" name="servico" title="Serviços dos Correios" class="select" tabindex="1">
    <option value="41106">PAC</option>
    <option value="40010">SEDEX</option>
    </select>

    </label>
    <label class="wsize010" for="cep-destino">
    <span class="nameField">CEP Destino</span>
    <input id="cep-destino" class="text" type="text" value="<?php echo  @$cep_destino ?>" maxlength="9" title="CPF destino" name="cep-destino" tabindex="2"/>
    </label>
    <label for="pesquisar" class="wsize010">
    <input type="submit" id="pesquisar" name="pesquisar" tabindex="3" class="button inline"  value="Pesquisar" />
    </label>
    </fieldset>
    </form>
     <?php
    // Caso venha valor de resposta é numerio e maior que o custo da embalagem senão ocorreu algum erro na solicitação.
    if(is_numeric(@$frete) and (@$frete > @$embalagem)) {

    // Quando encontra o valor da postagem, exibe na página formatando em padrão de moeda 10,89
    // Caso você não queira formatar basta comentar a linha abaixo que será exibido assim 10.89 e basta executar o comando abaixo
    $frete = number_format($frete,2,',','.');

    echo $nome_servico . $frete . ' prazo entrega de ' . $PrazoEntrega . ' dia(s) ';
    }  else {
     echo 'Erro ao consultar verifique se o CEP esta correto';
    }  ?>
    </li>
    </ul>
    <form action="email.php" method="post" >
    <ul>Nome : <input type="text" name="name" class="one" ></ul>
    <ul>Endereço : <input type="text" name="endereco" class="two"><li> Numero : <input type="text" name="numero" class="tree" ></li></ul>
    <ul>Bairro : <input type="text" name="bairro" class="four">
     <li> UF :<input type="text" name="uf" class="six"></li>
    <li class="city"> Cidade :<input type="text" name="cidade" class="five" ></li>
    </ul>
    <ul> Telefone :<input type="text" name="tel" class="eight">  </ul> </div>
    <div class="pagamento">

    <div class="textoprog"> <h2>2</h2>&nbsp;&nbsp;Forma de pagamento</div>
    <?php
     $total = 0;
     $conn = conecta();
     foreach ($_SESSION['shop'] as $id => $qtd) {
                                $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                $cart->setFetchMode(PDO::FETCH_ASSOC);
                                $cart->execute();
                                while ($linha = $cart->fetch()) {

                                  $foto = $linha['foto'];
                                  $nome = $linha['nome'];
                                  $descricao = $linha['descricao'];
                                  $tamanho = $linha['tamanho'];
                                  $cor = $linha['cor'];
                                  $preço = $linha['preço'];
                                  $total = number_format($total, 2, ',', '.');
                                  $total += $linha['preço'] * $qtd;

                            }
    ?>
    <div class="pal"><input type="radio" id="cardradius" name="bt" class="radio" ><img src="imagens/card.fw.png" class="cardicon" /><li>Cartão de credito</li></div>
    <div class="card">
    <div class="imgcard"><input type="radio" name="operadora" value="mastercard"><img src="imagens/Mastercard.fw.png" width="33" height="20" />
     <input type="radio" name="operadora" value="visa"><img src="imagens/visa_512.fw.png" width="33" height="20" ></div>
     <div class="infocard">
     <div class="namecard">Nome impresso no cartão : <input type="text" name="nomecard" class="card1" ></div>
      <div class="codcard">Numero do cartão :<input type="text" name="codcard" class="card2" ></div>
       <div class="datecard">Data de validade :
       <div class="month"> mês :</div>
       <select name="monthcard" class="card3" >
       <option value="Janeiro"> Janeiro</option>
       <option value="Fevereiro"> Fevereiro</option>
       <option value="Março"> Março</option>
       <option value="Abril"> Abril</option>
       <option value="Maio"> Maio</option>
       <option value="Junho"> Junho</option>
       <option value="Julho"> Julho</option>
       <option value="Agosto"> Agosto</option>
       <option value="Setembro"> Setembro</option>
       <option value="Outubro"> Outubro</option>
       <option value="Novembro"> Novembro</option>
       <option value="Dezembro"> Dezembro</option>
       </select>
       <div class="year"> Ano :
       <select name="yearcard" class="card4" >
       <option value="15"> 15</option>
       <option value="16"> 16</option>
       <option value="17"> 17</option>
       <option value="18"> 18</option>
       <option value="19"> 19</option>
       <option value="20"> 20</option>
       <option value="21"> 21</option>
       <option value="22"> 22</option>
       <option value="23"> 23</option>
       <option value="24"> 24</option>
       <option value="25"> 25</option>
       </select>
       </div>
       </div>
       <div class="securitycode">Codigo de segurança(CW) :<input type="text" name="securitycode" class="card5" ></div>
       <div class="parcel">Numero de parcelas
       <select name="parcel" class="card6" >
       <option value="1 Vez de R$   <?php echo number_format(@$total + @$frete , 2, ',', '.') ?>">1 Vez de R$   <?php echo number_format(@$total + @$frete , 2, ',', '.') ?></option>
       <option value="2 Vezes de R$ <?php echo number_format(@$total / 2 , 2, ',', '.')  ?>">2 Vezes de R$ <?php echo number_format(@$total / 2 , 2, ',', '.')  ?></option>
       <option value="3 Vezes de R$ <?php echo number_format(@$total / 3 , 2, ',', '.')  ?>">3 Vezes de R$ <?php echo number_format(@$total / 3 , 2, ',', '.')  ?></option>
       <option value="4 Vezes de R$ <?php echo number_format(@$total / 4 , 2, ',', '.')  ?>">4 Vezes de R$ <?php echo number_format(@$total / 4 , 2, ',', '.')  ?></option>
       <option value="5 Vezes de R$ <?php echo number_format(@$total / 5 , 2, ',', '.')  ?>">5 Vezes de R$ <?php echo number_format(@$total / 5 , 2, ',', '.')  ?></option>
       <option value="6 vezes de R$ <?php echo number_format(@$total / 6 , 2, ',', '.')  ?>">6 vezes de R$ <?php echo number_format(@$total / 6 , 2, ',', '.')  ?></option>
       </select>
       </div>
     </div>
     </div>
    <div class="pal"><input type="radio" id="boletoradius" name="bt" class="radio" ><img src="imagens/boleto.fw.png" class="boleticon" /><li>Boleto bancário</li></div>
    <div class="boleto">
    <li>Pagamento à vista</li>
    <li>Boleto vence em três dias</li>
    <li>Imprima o boleto após a finalização do pedido</li>
    <li>O pagamento do boleto poder ser feito em agências bancárias, casas lotéricas, correios ou internet banking</li>
    </div>
    <div class="pal"><input type="radio" id="mercadoradius" name="bt" class="radio" ><img src="imagens/mercado.fw.png" class="mpicon" /><li>Mercado Pago</li></div>
    <div class="mercado">
    <li>Após a finalização do pedido será aberta uma janela para realizar o pagamento através do MercadoPago</li>
    <li>O ambiente de pagamento é totalmente seguro</li>
    <li>Compras parceladas em até 12x através do MercadoPago não terão custos extras</li>
    </div>
    <div class="pal"><input type="radio" id="pagseguroradius" name="bt" class="radio" ><img src="imagens/pag.fw.png" class="pagicon" /><li>Pague seguro</li></div>
    <div class="pagseguro">
    <li>Após a finalização do pedido será aberta uma janela para realizar o pagamento através do Pagseguro</li>
    <li>O ambiente de pagamento é totalmente seguro</li>
    <li>Compras parceladas em até 12x através do Pagseguro </li>
    </div>
    </div>
    <div class="confirma">
    <div class="textoprog"> <h2>3</h2>&nbsp;&nbsp;Confirmar pedido </div>
    <div class="desfinaliza">
    <div id="textoend1"> <li>Codigo</li> <li>Foto</li> <li>Nome</li> <li>Quantidade</li> <li>Preço</li> </div>
    </div>
     <?php

     $total = 0;
     foreach ($_SESSION['shop'] as $id => $qtd) {
                                $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                $cart->setFetchMode(PDO::FETCH_ASSOC);
                                $cart->execute();
                                while ($linha = $cart->fetch()) {

                                  $foto = $linha['foto'];
                                  $nome = $linha['nome'];
                                  $descricao = $linha['descricao'];
                                  $tamanho = $linha['tamanho'];
                                  $cor = $linha['cor'];
                                  $preço = $linha['preço'];
                                  $total += $linha['preço'] * $qtd;

    echo '
    <div id="textoend2">
    <li ><div class="size" >R$'.$preço.' </div></li>
    <li><div class="sub2 size"> '.$qtd.' </div></li>
    <li><div class="name"> '.$linha['nome'].'<br>'.$linha['descricao'].'</div> </li>
    <img "</td>
    <li><div class="img"><img src = "../' . $foto . ' " width = "120px" height="120"  /></div> </li>
    </div>
    ';
                        }
            }
          }

         $total = number_format($total +  @$frete, 2, ',', '.');

    echo'
    <div id="textoend">
    <li class="totend">Total :</li>
    <li class="totend2">R$ '.$total.' </li>
    <li class="totend3"><input type="submit" class="totend3button" value="Finalizar Compra"></li>
    </div>
    ';

    ?>

    </div>
    <input type="hidden"  name="nome" value="<?php echo $linha['nome'] ?>" >
    <input type="hidden"  name="descricao" value=" <?php echo $linha ['descricao'] ?>" >
    <input type="hidden"  name="quantidade" value="<?php echo $qtd ?>" >
    <input type="hidden"  name="frete" value="<?php echo $frete ?>" >
    <input type="hidden"  name="total" value="<?php echo $total ?>" >
    </form>
    </div>
     </div>
    </body>
    </html>


    Por exemplo se o total é :  R$ 3.696,00            apresenta no total:  R$ 1.848,00, ou seja isso so acontece quando altero a quantidade no botao , se comprar direto funciona, o que fazer?

  8. Como eu chamo o javascript do total geral num input para exibir dentro de um echo $total_geral ? por exemplo o subtotal tá assim:

      echo '<td><div id="total" ><strong><font size="5" color="yellow" id="sub'.$linha['id'].'">R$ ' . $_SESSION['sub'] . '</font></strong></div></td>';

  9. no javascript é assim q faz o cálculo

    $(document).ready(function (e) {
        $('input').change(function (e) {
            id = $(this).attr('rel');
            $index = this.value;
            $preço = $('font#preço'+id).html().replace("R$ ",'');
            console.log($preço);
            $val = ($preço*$index).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,');;
            $('font#sub'+id).html('R$ '+$val);
     clearInterval(timer);

            });
            });

    como fazer para somar todos os produtos do carrinho, o meu total é assim :    $total += $linha['preço'] * $qtd; , mas não traz o total de todos, pode dar um exemplo?a minha dúvida onde implemento esse foreach q você falou , se já existe um foreach.

    1.thumb.png.b51880a4cf6306bf566b1f1f3ef5O

    Observe a imagem e veja que no subtotal, eu tenho os preços separados eu queria somar todos os subtotais dos produtos que eu adicionar, para ter um total geral.

  10. Bom dia , como posso fazer para calcular o total geral de todas as compras efetuadas ou seja a soma de todos os subtotais, como faço isso ?

      $conn = conecta();
      foreach ($_SESSION['shop'] as $id => $qtd) {
                                 $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                 $cart->setFetchMode(PDO::FETCH_ASSOC);
                                 $cart->execute();
                                 while ($linha = $cart->fetch()) {
                                       $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);
                                       $sub = number_format($linha['preço'] * $qtd, 2, ',', '.');
                                       $total += $preço; 

  11. Eu não uso tabela ['qtd'] , qtd é uma variável ($qtd), o q acontece e que quando escolho outro produto o produto atual volta a quantidade 1, não sei se o problema está ao adicionar o produto ou no alterar a quantidade.

    //Se existir $_POST['prod'] ent�o come�a..
    if($_GET['acao'] == 'up'){
                if(is_array($_POST['prod'])){
                   foreach($_POST['prod'] as $id => $qtd){
                      $id  = intval($id);
                      $qtd = intval($qtd);
                      if(!empty($qtd) || $qtd <> 0){
                      $_SESSION['carrinho'][$id] = $qtd;
                      }else{
                         unset($_SESSION['carrinho'][$id]);

                      }
                   }
                }
             } e mudei o adicionar para: if (isset($_GET['acao']) && $_GET['acao'] == 'add' ) {
      $id = intval($_GET['id']);
               if(!isset($_SESSION['shop'][$id])){
                  $_SESSION['shop'][$id] = 1;
               }else{
               }
            }

  12. Olá este é o meu carrinho de compras, funciona normalmente, porem se eu  adicionar um novo produto ou a pagina for atualizada, o preço e a quantidade volta ao inicio (1 produto), ou seja não consigo adicionar outro produto, gostaria de  manter os dados sem perde-los,ao adicionar outro produto.alguém pode me ajudar como implementar cookies neste codigo pra que os dados não se percam.  

    <?php
    session_start();
    include(dirname(__FILE__) . './funcao/conecta.php');


    if (!isset($_SESSION['shop'])) {
        $_SESSION['shop'] = array();
    }

    //adiciona produto

    if (isset($_GET['acao']) && $_GET['acao'] == 'add' ) {
         $id = intval($_GET['id']);
         if (isset($_SESSION['shop'][$id]) || empty($_SESSION['shop'][$id])) {
             $_SESSION['shop'][$id] = 1;
         } else {
             $_SESSION['shop'][$id] += 1;
         }
     }
    //subtrari produto do cesto
    if (isset($_GET['acao'])) {
        if ($_GET['acao'] == 'sub') {
            $id = intval($_GET['id']);
            if (!isset($_SESSION['shop'][$id])) {
                $_SESSION['shop'][$id] = 1;
            } else {
                $_SESSION['shop'][$id] -= 1;
            }if ($_SESSION['shop'][$id] == 0) {
                unset($_SESSION['shop'][$id]);
            }
        }
    }

    //remove produto do cesto
    if (isset($_GET['acao'])) {
        if ($_GET['acao'] == 'del') {
            $id = intval($_GET['id']);
            if (isset($_SESSION['shop'][$id])) {
                unset($_SESSION['shop'][$id]);
            }
        }
    }
    //altera a quantidade de produtos
    //Se existir $_POST['prod'] ent�o come�a..
    if (isset($_POST['atualizar'])){
        if ($_GET['acao'] == 'atualizar') {

            if (is_array($_POST['prod'])) {
                foreach ($_POST['prod'] as $id => $qtd) {
                    $id = intval($id);
                    $qtd = intval($qtd);
                    if (!empty($qtd) || $qtd <> 0) {
                        $_SESSION['shop'][$id] = $qtd;
                    } else {
                        unset($_SESSION['shop'][$id]);
                    }
                }
            }
        }
    }
    ?>
    <!doctype html>
    <html lang='pt-br'>
        <head>
            <meta charset = 'utf8'>
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <title>Seja Bem Vindo !</title>
            <link rel = "stylesheet" type = "text/css" href = "css/default.css">
            <body onkeydown="return (event.keyCode == 154)">
            <script src="js/jquery-2.0.0.js" type="text/javascript"></script>
            <script src="js/shop.js" type="text/javascript"></script>
            </head>
            <script>
            <script language=javascript>
            document.onkeydown = function () {
              switch (event.keyCode) {
                case 116 :
                   event.returnValue = false;
                   event.keyCode = 0;
                   return false;
                 case 82 :
                   if (event.ctrlKey) {
                      event.returnValue = false;
                     event.keyCode = 0;
                     return false;
              }
            }
        }
        </script>
            </script>
            <br>
            <div align = "center"><h4>Suas compras efetuadas:</h4>
            <br>
    <form action = "shop.php?acao= 'atualizar' method = "post">
    <table border = "3"  color = width = "100%">
    <tr>
    <td width = "10%"><strong><font size="5" color="violet">FOTO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">NOME</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">DESCRIÇÃO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">TAMANHO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">COR</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">PREÇO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">QUANTIDADE</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">SUBTOTAL</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">REMOVER</strong></font></td>
    </tr>
    </thead>
    </br>
    <form  method="post" action="?acao=atualizar">
    <tfoot>
    <tr>
    <td colspan="9"><input type="submit" size = "5" value="atualizar" /></td>
    <tr>
    <td colspan="9"><a href="./index.php"><strong><font size="4" color="violet">Continuar Comprando</a></td>
    <tr>
    <tr>
    <td colspan="9"><a href="./admin/paypal.php"><strong><font size="4" color="violet"><img src="imagens/paypal.png" align="left" style="margin-right:7px;"></a></td>
    </tfoot>
    <tbody>


      <?php

      $total = 0;
      if(count($_SESSION['shop']) == 0){
      echo '<tr><td align = "center" colspan="9"><strong><font size="6" color="yellow">Não existem produtos em seu cesto de compras !</td></tr>';
      }else{
      $conn = conecta();
      foreach ($_SESSION['shop'] as $id => $qtd) {
                                 $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                 $cart->setFetchMode(PDO::FETCH_ASSOC);
                                 $cart->execute();
                                 while ($linha = $cart->fetch()) {
                                       $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);
                                       $sub = number_format($linha['preço'] * $qtd, 2, ',', '.');
                                       $total += $preço;
                                       echo '<tr>';
            echo '<td><img src = "' . $foto . ' " width = "120px"</td>';
            echo '<td><strong><font size="4" color="yellow">'.$nome.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$descricao.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$tamanho.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$cor.'</td>';
            echo' <td><strong><font size="4" color="yellow" id="preço'.$linha['id'].'">R$ ' . $preço . '</font></strong></td>';
            echo'<td><input rel="'.$linha['id'].'" type="number" step="1" min="1" style="width:50px; font-family: Tahoma; font-size: 20px;" name="prod[' . $id . ']" value="' . $qtd . '"></td>';
            echo '<td><div id="total" ><strong><font size="5" color="yellow" id="sub'.$linha['id'].'">R$ ' . $sub . '</font></strong></div></td>';
            echo '<td align = "center" colspan = "9"><a href="?acao=del&id='.$id.'"><img src="./imagens/remover.png" width="70" height="70" ></td>';
            echo '</tr>';
    }
    echo '<tr>';
    }
    }
    ?>

     

  13. O carrinho faz os calculos direitinho, mas se há um refresh (botao atualizar do navegador) , ele volta pro preço inicial (de 1 quantidade) como impedir isso, ou redirecionar a página para que isso não aconteça. eis o codigo:

    <?php
    session_start();
    include(dirname(__FILE__) . './funcao/conecta.php');

    if (!isset($_SESSION['shop'])) {
        $_SESSION['shop'] = array();
    }

    //adiciona produto

    if (isset($_GET['acao'])) {
        $id = intval($_GET['id']);
        if (!isset($_SESSION['shop'][$id])) {
            $_SESSION['shop'][$id] = 1;
        } else {
            $_SESSION['shop'][$id] += 1;
        }
        header('Location: shop.php');  // assim as variáveis serão removidas da url, depois da sessão já gravada.
    }
    //subtrari produto do cesto
    if (isset($_GET['acao'])) {
        if ($_GET['acao'] == 'sub') {
            $id = intval($_GET['id']);
            if (!isset($_SESSION['shop'][$id])) {
                $_SESSION['shop'][$id] = 1;
            } else {
                $_SESSION['shop'][$id] -= 1;
            }if ($_SESSION['shop'][$id] == 0) {
                unset($_SESSION['shop'][$id]);
            }
        }
    }

    //remove produto do cesto
    if (isset($_GET['acao'])) {
        if ($_GET['acao'] == 'del') {
            $id = intval($_GET['id']);
            if (isset($_SESSION['shop'][$id])) {
                unset($_SESSION['shop'][$id]);
            }
        }
    }
    //altera a quantidade de produtos
    //Se existir $_POST['prod'] ent�o come�a..
    if (isset($_POST['prod']))
        if ($_GET['acao'] == 'atualizar') {

            if (is_array($_POST['prod'])) {
                foreach ($_POST['prod'] as $id => $qtd) {
                    $id = intval($id);
                    $qtd = intval($qtd);
                    if (!empty($qtd) || $qtd <> 0) {
                        $_SESSION['shop'][$id] = $qtd;
                    } else {
                        unset($_SESSION['shop'][$id]);
                    }
                }
            }
        }
    ?>
    <!doctype html>
    <html lang='pt-br'>
        <head>
            <meta charset = 'utf8'>
            <meta name = "viewport" content = "width = device-width,initial-scale = 1.0">
            <title>Seja Bem Vindo !</title>
            <link rel = "stylesheet" type = "text/css" href = "css/default.css">
            <body onkeydown="return (event.keyCode == 154)">
            <script src="js/jquery-2.0.0.js" type="text/javascript"></script>
            <script src="js/shop.js" type="text/javascript"></script>
            </head>
            <script>
            <script language=javascript>
            document.onkeydown = function () {
              switch (event.keyCode) {
                case 116 :
                   event.returnValue = false;
                   event.keyCode = 0;
                   return false;
                 case 82 :
                   if (event.ctrlKey) {
                      event.returnValue = false;
                     event.keyCode = 0;
                     return false;
              }
            }
        }
        </script>
            </script>
            <br>
            <div align = "center"><h4>Suas compras efetuadas:</h4>
            <br>
    <form action = "shop.php?acao= 'atualizar' method = "post">
    <table border = "3"  color = width = "100%">
    <tr>
    <td width = "10%"><strong><font size="5" color="violet">FOTO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">NOME</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">DESCRIÇÃO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">TAMANHO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">COR</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">PREÇO</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">QUANTIDADE</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">SUBTOTAL</strong></font></td>
    <td width = "10%"><strong><font size="5" color="violet">REMOVER</strong></font></td>
    </tr>
    </thead>
    </br>
    <form action="?acao=atualizar" method="post">
    <tfoot>
    <tr>
    <td colspan="9"><input type="submit" size = "5" value="atualizar" /></td>
    <tr>
    <td colspan="9"><a href="./index.php"><strong><font size="4" color="violet">Continuar Comprando</a></td>
    <tr>
    <tr>
    <td colspan="9"><a href="./funcao/expresscheckout.php"><strong><font size="4" color="violet"><img src="imagens/paypal.png" align="left" style="margin-right:7px;"></a></td>
    </tfoot>
    <tbody>


      <?php
      $total = 0;
      if(count($_SESSION['shop']) == 0){
      echo '<tr><td align = "center" colspan="9"><strong><font size="6" color="yellow">Não existem produtos em seu cesto de compras !</td></tr>';
      }else{
      $conn = conecta();
      foreach ($_SESSION['shop'] as $id => $qtd) {
                                 $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                 $cart->setFetchMode(PDO::FETCH_ASSOC);
                                 $cart->execute();
                                 while ($linha = $cart->fetch()) {
                                       $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);
                                       $sub = number_format($linha['preço'] * $qtd, 2, ',', '.');
                                       $total += $preço;
                                       echo '<tr>';
            echo '<td><img src = "' . $foto . ' " width = "120px"</td>';
            echo '<td>'.$nome.'</td>';
            echo '<td>'.$descricao.'</td>';
            echo '<td>'.$tamanho.'</td>';
            echo '<td>'.$cor.'</td>';
            echo' <td><strong><font size="4" color="yellow" id="preço'.$linha['id'].'">R$ ' . $preço . '</font></strong></td>';
            echo'<td><input rel="'.$linha['id'].'" type="number" step="1" min="1" style="width:50px; font-family: Tahoma; font-size: 20px;" name="prod[' . $id . ']" value="' . $qtd . '"></td>';
            echo '<td><div id="total" ><strong><font size="5" color="yellow" id="sub'.$linha['id'].'">R$ ' . $sub . '</font></strong></div></td>';
            echo '<td align = "center" colspan = "9"><a href="?acao=del&id='.$id.'"><img src="./imagens/remover.png" width="70" height="70" ></td>';
            echo '</tr>';
    }
    echo '<tr>';
    }
    }
    ?>

     

  14. O código está assim , eu gostaria de colocar um botão de mais e menos no input da quantidade, para atualizar o preço e a quantidade automaticamente:    $conn = conecta();
      foreach ($_SESSION['shop'] as $id => $qtd) {
                                 $cart = $conn->prepare("SELECT * FROM produtos WHERE  id=$id");
                                 $cart->setFetchMode(PDO::FETCH_ASSOC);
                                 $cart->execute();
                                 while ($linha = $cart->fetch()) {
                                       $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);
                                       $sub = number_format($linha['preço'] * $qtd, 2, ',', '.');
                                       $total += $preço;
                                       echo '<tr>';
            echo '<td><img src = "' . $foto . ' " width = "120px"</td>';
            echo '<td><strong><font size="4" color="yellow">'.$nome.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$descricao.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$tamanho.'</td>';
            echo '<td><strong><font size="4" color="yellow">'.$cor.'</td>';
            echo '<td><strong><font size="4" color="yellow">R$ '.$preço.'</td>';
            echo'<td align = "center"><strong><font size="3" color="yellow"><input type="text" size    ="1"  style="font-family: Tahoma; font-size: 20px;align = "center" name="prod['.$id.']" value="'.$qtd.'"/></td>';
            echo '<div id="total" ><td><strong><font size="5" color="yellow">R$ '.$sub.'</td>';
            echo '<td align = "center" colspan = "9"><a href="?acao=del&id='.$id.'"><img src="./imagens/remover.png" width="70" height="70" ></td>';
            echo '</tr>';
    }
    echo '<tr>';
    }
    }
    ?>

  15. Bom dia, ao adicionar um produto no carrinho toda vez que atualiza o browser ele incrementa em +1 o produto. como impedir isso? está assim o adicionar produto:

        if(isset($_GET['acao'])){
          $id = intval($_GET['id']);
              if(!isset($_SESSION['shop'][$id])){
                 $_SESSION['shop'][$id] = 1;
              }else{
                 $_SESSION['shop'][$id] += 1;
              }
           }
  16. Nesta Session como impedir que a cada refresh (F5) ele aumente a quantidade do produto.

      session_start();


          if(!isset($_SESSION['shop'])){
             $_SESSION['shop'] = array();
          }

          //adiciona produto

            if(isset($_GET['acao'])){
              $id = intval($_GET['id']);
                  if(!isset($_SESSION['shop'][$id])){
                     $_SESSION['shop'][$id] = 1;
                  }else{
                     $_SESSION['shop'][$id] += 1;
                  }
               }
            //subtrari produto do cesto
                        if($_GET['acao'] == 'sub'){
                        $id = intval($_GET['id']);
                        if(!isset($_SESSION['shop'][$id])){
                           $_SESSION['shop'][$id] = 1;
                        }else{
                         $_SESSION['shop'][$id] -= 1;
                        }if  ($_SESSION['shop'][$id] == 0 ) {
            unset ($_SESSION['shop'][$id]) ;
            }
                     }

             //remove produto do cesto
            
             if($_GET['acao'] == 'del'){
                $id = intval($_GET['id']);
                if(isset($_SESSION['shop'][$id])){
                   unset($_SESSION['shop'][$id]);
                }
             }

    //altera a quantidade de produtos

    //Se existir $_POST['prod'] ent�o come�a..
      if( isset( $_POST['prod'] ) )
       if($_GET['acao'] == 'atualizar'){

         if(is_array($_POST['prod'])){
            foreach($_POST['prod'] as $id => $qtd){
               $id  = intval($id);
               $qtd = intval($qtd);
               if(!empty($qtd) || $qtd <> 0){
                  $_SESSION['shop'][$id] = $qtd;
               }else{
                  unset($_SESSION['shop'][$id]);
               }
            }
         }
      }

     

  17. Este é o carrinho:

    <?php
    include(dirname(__FILE__) . './funcao/conecta.php');
    //include(dirname(__FILE__) . './classes/shop.class.php');
        session_start();


          if(!isset($_SESSION['shop'])){
             $_SESSION['shop'] = array();
          }

          //adiciona produto

            if(isset($_GET['acao'])){
             if($_GET['acao'] == 'add'){
                  $id = intval($_GET['id']);
                  if(!isset($_SESSION['shop'][$id])){
                    $_SESSION['shop'][$id] = 1;
               }
            }
            //subtrari produto do cesto
                     if($_GET['acao'] == 'sub'){
                        $id = intval($_GET['id']);
                        if(!isset($_SESSION['shop'][$id])){
                           $_SESSION['shop'][$id] = 1;
                        }else{
                           $_SESSION['shop'][$id] -= 1;
                        }if  ($_SESSION['shop'][$id] == 0 ) {
            unset ($_SESSION['shop'][$id]) ;
            }
                     }

             //remove produto do cesto
             if($_GET['acao'] == 'del'){
                $id = intval($_GET['id']);
                if(isset($_SESSION['shop'][$id])){
                   unset($_SESSION['shop'][$id]);
                }
             }

             //ALTERAR QUANTIDADE
                 //Se existir $_POST['prod'] então começa..
                 if (isset($_POST['prod']))
                 if($_GET['acao'] == 'up'){
                if(is_array($_POST['prod'])){
                   foreach($_POST['prod'] as $id => $qtd){
                      $id  = intval($id);
                      $qtd = intval($qtd);
                      if(!empty($qtd) || $qtd <> 0){
                         $_SESSION['shop'][$id] = $qtd;
                      }else{
                         unset($_SESSION['shop'][$id]);
                      }
                   }
                }
             }

          }


    aki as variáveis:

     $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);

                                      $sub = str_replace(",",".",$linha['preço']) * $qtd ;

                                      $total += $preço;

     

    aki os inputs:

      echo '<td><strong><font size="4" color="yellow">R$ '.$preço.'</td>';
            echo' <td><input type="text" size    ="3" name="prod['.$id.']" value="'.$qtd.'" /></td>';
            echo '<td><strong><font size="4" color="yellow">R$ '.$sub.'</td>';

    Está aparecendo assim:

     

    Como posso fazer para alterar no meu carrinho  a quantidade e atualizar o subtotal  automaticamente em ajax , não conheço ajax , gostaria que alguém pudesse me mostrar como fazer,pois como na imagem quando adiciono 1 produto ele mostra o preço e a quantidade certa, mas se adiciono mais um ele não calcula.

    1.png

  18. Este é o carrinho:

    <?php
    include(dirname(__FILE__) . './funcao/conecta.php');
    //include(dirname(__FILE__) . './classes/shop.class.php');
        session_start();


          if(!isset($_SESSION['shop'])){
             $_SESSION['shop'] = array();
          }

          //adiciona produto

            if(isset($_GET['acao'])){
             if($_GET['acao'] == 'add'){
                  $id = intval($_GET['id']);
                  if(!isset($_SESSION['shop'][$id])){
                    $_SESSION['shop'][$id] = 1;
               }
            }
            //subtrari produto do cesto
                     if($_GET['acao'] == 'sub'){
                        $id = intval($_GET['id']);
                        if(!isset($_SESSION['shop'][$id])){
                           $_SESSION['shop'][$id] = 1;
                        }else{
                           $_SESSION['shop'][$id] -= 1;
                        }if  ($_SESSION['shop'][$id] == 0 ) {
            unset ($_SESSION['shop'][$id]) ;
            }
                     }

             //remove produto do cesto
             if($_GET['acao'] == 'del'){
                $id = intval($_GET['id']);
                if(isset($_SESSION['shop'][$id])){
                   unset($_SESSION['shop'][$id]);
                }
             }

             //ALTERAR QUANTIDADE
                 //Se existir $_POST['prod'] então começa..
                 if (isset($_POST['prod']))
                 if($_GET['acao'] == 'up'){
                if(is_array($_POST['prod'])){
                   foreach($_POST['prod'] as $id => $qtd){
                      $id  = intval($id);
                      $qtd = intval($qtd);
                      if(!empty($qtd) || $qtd <> 0){
                         $_SESSION['shop'][$id] = $qtd;
                      }else{
                         unset($_SESSION['shop'][$id]);
                      }
                   }
                }
             }

          }


    aki as variáveis:

     $foto = $linha['foto'];
                                       $nome = $linha['nome'];
                                       $descricao = $linha['descricao'];
                                       $tamanho = $linha['tamanho'];
                                       $cor = $linha['cor'];
                                       $preço = $linha['preço'];
                                       $linha['preço'] = str_replace(",",".",$linha['preço']);

                                      $sub = str_replace(",",".",$linha['preço']) * $qtd ;

                                      $total += $preço;

     

    aki os inputs:

      echo '<td><strong><font size="4" color="yellow">R$ '.$preço.'</td>';
            echo' <td><input type="text" size    ="3" name="prod['.$id.']" value="'.$qtd.'" /></td>';
            echo '<td><strong><font size="4" color="yellow">R$ '.$sub.'</td>';

     

    Como posso fazer para alterar no meu carrinho  a quantidade e atualizar o subtotal  em ajax , não conheço ajax , gostaria que alguém pudesse me mostrar como fazer.

×
×
  • Criar Novo...