Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Inserir varios itens ao carrinho de uma vez


marcosfj1

Pergunta

Bom pessoal, seguinte tenho uma listagem grande de produtos, ai o q acontece hj quando um cara quer comprar algo ele precisa clicar no produto, ai abre a pagina de detalhe e clica em comprar e ai vai para a pagina do carrinho onde ele pode selecionar a quantidade de cada produto, ou excluir algum produto...Beleza esta funcionando tudo OK.

Mas quer dar velocidade as compras, da seguinte maneira:

Coloquei junto ao nome do produto um campo de CHECKBOX que contem o id do produto então no final da listagem de porduto coloquei um botao COMPRAR ai o q eu quero é q quando o usuario selecionar 5 produtos(por exemplo) e clicar em comprar este produtos sejam inseridos direto no carrinho dele e ao clicar ele deve ser enviado para a tela do carrinho.

Vou colocar o q eu fiz até agora:

Aqui eu crio o botao checkbox, para o usuario selecionar os produtos que deseja enviar:

<input name="id_produto[]" id="id_produto[]" type="checkbox" value="<?=$cp['id_produto'] ?>" />
o meu formulario:
<form id="form1" name="form1" method="post" action=""> 
                <input type="image" name="carrinho_adicionar_varios" id="carrinho_adicionar_varios" value="carrinho_adicionar_varios"  src="imagem/bt_comprar.gif" alt="Adicionar Itens Selecionados" /> 
                <input type="hidden" name="carrinho_adicionar_varios" id="carrinho_adicionar_varios" value="<?=$_POST['id_produto'] ?>"/> 
</form>
Onde eu trato os produtos escolhidos e insiro no carrinho
if (isset($_POST['carrinho_adicionar_varios'])) { 
                                $chave_produto = md5(uniqid(rand(), true));  
                                 
                                $values = Array();  
                                 
                                foreach($_POST['id_produto'] AS $item ) {  
                                        if( !empty( $item ) )  
                                          $values[] = "(now(), '{".$_SESSION['cliente']['id_cliente']."}', '{".$_POST['id_produto']."}', 1, '{".$chave_produto."}')";  
                                        }  
                                 $sql = "INSERT INTO carrinho (dt_hr, id_cliente, id_produto, qt_produto, chave_produto) VALUES ".implode( ', ', $values );  
                                   mysql_query($sql);  
                                 echo $sql;

Bom galera o problema é que ta dando o seguinte erro:

Warning: Invalid argument supplied for foreach() in /blabla.php on line 234

INSERT INTO carrinho (dt_hr, id_cliente, id_produto, qt_produto, chave_produto) VALUES

Eu acredito que esteja com algum problema no envio do formulario, pois parece que ele não consegue entrar no foreach, pois não tem o POST

alguém sabe me ajudar??

Valeu

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

dá um print_r($_POST) para ver tudo o que está sendo enviado....

O seu formulário está exatamente como você postou? Se sim, lembre-se que os inputs:

<input name="id_produto[]" id="id_produto[]" type="checkbox" value="<?=$cp['id_produto'] ?>" />

Devem estar entre a tag <form... e a tag </form>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...