Ir para conteúdo
Fórum CódigoFonte.net
Entre para seguir isso  
rodolfo_alves

Salvar dados de uma lista de SESSIONS no BD

Recommended Posts

Olá pessoas, sou novato em PHP, estou estudando a linguagem e ao mesmo tempo tentando criar algo com o que aprendi. Quando tenho dúvidas procuro na net, tópicos e ou scripts já prontos que me façam entender. Todavia desta vez não encontrei algo claro.

Estou criando um mini sistema de vendas, do qual me permite adicionar uma lista de itens. Daí está o problema, como não tenho um conhecimento avançado de arrays não estou sabendo pegar os dados da lista criada e passar para o BD. Só consigo passar a última informação criada na lista.

image.thumb.png.6b30876b06c6d40aa0200fcbfe9651da.png

 

<?php
     // inicio consulta url
    if(!isset($_SESSION['itens'])){
        $_SESSION['itens'] = array();
    }

    if(isset($_GET['acao'])){

        $id = $_GET['id'];

        // Adiciona ao carrinho
        if($_GET['acao'] == 'add'){
            if(!isset($_SESSION['itens'][$id])){
                $_SESSION['itens'][$id] = 1;
            }else{
                $_SESSION['itens'][$id] += 1;
            }
        }


        // Diminui carrinho
        if($_GET['acao'] == 'dim'){
            if(!isset($_SESSION['itens'][$id])){
                $_SESSION['itens'][$id] = 1;
            }else{
                if($_SESSION['itens'][$id] > 1)
                $_SESSION['itens'][$id] -= 1;
            }
        }


        //deleta item do carrinho
        if($_GET['acao'] == 'del'){
            $id = intval($_GET['id']);
            if(isset($_SESSION['itens'][$id])){
                unset($_SESSION['itens'][$id]);
            }
        }


        
    }

     // fim consulta url 

     // inicio consulta para adicionar
     if(count($_SESSION['itens']) == 0){

 ?>

                              <br>
                              <div class="alert alert-danger alert-dismissible">
                                <button type="button" class="close" data-dismiss="alert">&times;</button>
                                <strong>LISTA VAZIA:</strong> Para adicionar produtos/servicos realize a busca.
                              </div>
                              <br>

<?php
    }else{
        require_once('db.class.php');
        $objDb = new db();
        $link = $objDb -> conecta_mysql();

        $total = 0;
        foreach ($_SESSION['itens'] as $idProdutos => $quantidade) {
            $sql = "SELECT * FROM produtos WHERE id='$idProdutos'";
            $consultado = mysqli_query($link, $sql) or die(mysql_error());
            $linha = mysqli_fetch_array($consultado);

            $id = $linha['id'];
            $codigo = $linha['codigo'];
            $produto = $linha['produto'];
            $quantidade_disp = $linha['qtd'];
            $valor = $linha['valor'];
            $subTotal = $linha['valor'] * $quantidade;

            $total += $linha['valor'] * $quantidade;

?>
                        <tr>
                          <td><input type="hidden" name="codigo_produto" value=""><?= $codigo; ?></td>

                          <td><input type="hidden" name="nome_produto" value=""><?= $produto; ?></td>
                          
                          <td><input type="hidden" name="qtd_produto" value=""><?= $quantidade_disp; ?></td>
                          
                          <td>
                              
                              <a href="gerar_pedidos_admin.php?acao=dim&id=<?= $id; ?>"><span class="glyphicon glyphicon-minus" style="color: red"></span></a>
                              <input type="number" name="qtd_produto1" min="1" max="<?= $quantidade_disp; ?>" value="<?= $quantidade; ?>">
                              <a href="gerar_pedidos_admin.php?acao=add&id=<?= $id; ?>"><span class="glyphicon glyphicon-plus" style="color: green"></span></a>


          
                          </td>
                          
                          <td><input type="hidden" name="valor_produto" value="">R$ <?= number_format($valor,2,",", "."); ?></td>

                          <td>R$ <?= number_format($subTotal,2,",", ".");?></td>
                        
                        <td><a href="gerar_pedidos_admin.php?acao=del&id=<?= $id; ?>"><span class="glyphicon glyphicon-remove" style="color: red;"></span></a></td>
                        </tr>
<?php
        }

?>
<tr>
                             <td></td>
                             <td></td>
                             <td></td>
                             <td></td>
                             <td></td>
                             <td></td>
                             <td><label>Total</label><br>R$ <input type="hidden" name="total_pedido" value=""><?= number_format($total,2,",", ".");?></td>
                         </tr>

<?php

    }
?>
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

×
×
  • Criar Novo...