Ir ao conteúdo
  • Cadastre-se

PHP Pizzaria teste , captura de dado via id, name em tabela nao funciona


Posts recomendados

Ola, fiz uma tabela para a area do cliente, que seria a area onde é efetuada a compra da pizza. Estou tendo problemas pois nao consigo pegar os dados das colunas ou linhas e passar para o php, que logo em seguida iria adicionar ao banco de dados, o cliente clicka em comprar e o pedido vai ate o banco de dados, porém nao consigo fazer isso , afinal nao consigo capturar os dados das linhas e tabelas, que seriam o preço, nome, id

Já tentei usar id ou name nos linhas e colunas para capturar os dados, porém nao funciona

ainda to estudando programação se alguem puder me ajudar agradeço

 

 

<table>



    <tr>

      <th colspan="3">Pizzas</th>

      <th>Preço</th>

      <th></th>

    </tr>



    <tr > 

      <td> 1 </td>

      <td>Calabresa</td>

      <td ><img src="pizzacalabresa.png" id="calab"></td>

      <td> R$64.00</td>

      <td><div id="compa" name="compa"><input type="submit" value="Comprar" id="comp1" name="comp1"></div></td>

    </tr>

    <tr>

    <td > 2 </td>

      <td> Filé</td>

      <td> <img src="pizzafile.jpg" id="file"></td>

      <td> R$65.00</td>

      <td><div id="compa" name="compa"><input type="submit" value="Comprar" id="comp" name="comp"></div></td>

    </tr>

    <tr>

    <td > 3 </td>

      <td> Portuguesa </td>

      <td> <img src="pizzaportuguesa.jpg" id="portuguesa"> </td>

      <td> R$50.00 </td>

      <td><div id="compa" name="compa"><input type="submit" value="Comprar" id="comp" name="comp"></div></td>

    </tr>



  </table>

 

Link para o post
Compartilhar em outros sites
  • Moderador

@DimySkinny Não vai funcionar.

 

Não se pode usar o mesmo ID nos elementos e também não se pude usar o mesmo name do campo.. pois é esse atributo que leva o dado.

No caso, sempre use "class" deixe o ID apenas para quando os elementos forem "únicos"

No elemento DIV. não coloque o name.

Ademais, em momento algum você passa o valor do produto, além disso, falta elementos aí.  você precisa usar o <form>.. a menos que você use o javascript para passar os dados via ajax.

 

No seu caso, como é um estudo, vale dizer que é melhor você criar um campo hidden com o valor do produto e submeter.

 

Exemplo:

 

<div class="produto">
  <h1> Pizza de Quatro Queijos</h1>
  <img src="pizza-4-queijos.png"/> 
  <form action="recebePedido.php" method="POST">
      <input type="hidden" value="1" name="id_produto" />
      <input type="hidden" value="35.00" name="valor"/>
      <input type="text" placeholder ="Quantidade" name="qtd"/>
      <input type="submit" value="Comprar"/>
  </form>
</div>  

 

No php arquivo recebePedido.php

 

<?php

  $id_cliente = $_SESSION["id"];

  $produto = $_POST["id_produto"];
  $qtd     = $_POST["qtd"];
  $preco   = $_POST["valor"];

  include "conexao.php";

  $insere = mysqli_query($conexao, "INSERT INTO pedidos (id_produto, qtd, valor, id_cliente) VALUES($produto, $qtd, $preco, $id_cliente) ");

if($insere):
    echo "Pedido feito com sucesso";
else:
   echo "Pedido não realizado";
endif;

      

Bom isso é só um exemplo. não copie e cole. entenda o que foi feito ali..

Tenha em mente que isso é só para questão de aprendizado, no sistema real, você deve usar o banco de dados para resgatar os dados do produto de forma dinâmica.

 

  • Obrigado 1
Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Redes-Wi-Fi-capa-3d-newsletter.png

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!