Ir para conteúdo

Arquivado

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

sdigabriel

[Resolvido] [PHP MYSQL] Dados + calculo

Recommended Posts

boa tarde galera!

Seguinte estou iniciando no php... resolvi criar um sistema de pedidos on-line e tal fazendo tudo direitinho porém me deparei com uma duvida e faz 3 dias que busco no google , comus e etc a solução mais não encontro nada parecido, se alguém puder me dar uma ajuda no sentido de indicar algum tutorial ou algo mais direcionado a minha duvida ficarei grato. Seguindo tenho em db, dentro desse db tenho tabelas como pedidos e produtos. Na tabela produtos eu tenho os campos id, produto e valor. criei um formulário de inserção aonde o cliente coloca os dados e envia o pedido que registra na tabela pedidos nesse formulário eu busco em um Select os produtos da tabela produtos até ai tudo bem tudo certo mais a duvida é o seguinte no formulário tem a opção quantidade gostaria mais não sei como que antes de inserir o pedido ele efetuaria uma busca conforme o id do produto buscando o valor e multiplica-se a quantidade passada pelo valor do produto.

 

Resumindo tenho um form com vários campos 2 deses campos são produtos que é um select que busca os dados do db em uma tabela produto que contém os campos id, produto e valor; o outro campo do form é quantidade aonde o cliente digita a quantidade, esse form tem como action outra pagina aonde executa o código de inserção que é a registra_pedido.php.

gostaria que na pagina registra_pedido.php ela retorne o valor do produto com o id passado pelo form e que faça a multiplicação do valor*quantidade para inserir no db.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<?php
// $quantidade é a quantidade inserida pelo usuário
// $valor é o valor unitário
$resultado = $valor * $quantidade;
//$resultado é o resultado final, e o que deve ser inserido no banco.
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentei isto mais não ta efetuando o calculo :s comentei ele...

<?php

//calculo valor

$pr = $_POST['id_produtos']; // pega o id do produto

$quantidade2 = $_POST['txt_quantidade'];// pega o id da quantidade

$table = "produto";

$tabela = mysql_select_db ($table);

$query_produto = "SELECT * FROM produto WHERE id='$pr'";// selecionar produto para pegar o valor

$exec = mysql_query($query_produto, $connect) or die(mysql_error());

$dados = array($query_produto);

$valor = $dados['valor'];

$resultado = $valor * $quantidade2;//$resultado é o que insere no campo total

Compartilhar este post


Link para o post
Compartilhar em outros sites

tentei isto mais não ta efetuando o calculo :s comentei ele...

Cara primeiro você faz a conexão depois você vê o resto.

mysql_connect("localhost", "usuario", "senha");
//localhost = server local

Compartilhar este post


Link para o post
Compartilhar em outros sites

sdigabriel

o mysql_connect é uma variavel?

se for coloca assim:

mysql_select_db($table, $variavelquefazconexao);

$variavelquefazconexao = mysql_connect("localhost", "usuario", "senha");

O problema deve ser resolvido.

 

Corrigindo :

//linha 9 
$exec = mysql_query($inserir) or die(mysql_error());
//linha 31 
$exec = mysql_query($inserir) or die(mysql_error());

Variavel duplicada isso pode dar erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

a variável $connect vem da pag que ta no include conecta.php

<?php
$hostname_data = "localhost";
$database_data = "painel";
$username_data = "root";
$password_data = "";
$connect = mysql_pconnect($hostname_data, $username_data, $password_data) or trigger_error(mysql_error()); 
$db = mysql_select_db("painel") or die(mysql_error()); // Seleciona o banco
?>

ta inserindo tudo normal só não está fazendo a conta... a parte do array está certa? e arrumei já os exec não tinha notado que tinha posto igual.

obrigado por estar me ajudando!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Altere isto:

Este trecho

$dados = array($query_produto);
$valor = $dados['valor'];

Troque por esse:

while($dados = mysql_fetch_array($exec)){
$valor = $dados['valor'];
}

Isso deve ajudar.

 

Se não der certo faça de acordo com a explicação abaixo:

 

Para saber se e poblema na inserção ou no script da um echo no valor e veja se funciona:

$resultado = $valor * $quantidade;
echo $resultado;

Se eu ajudar por favor repute clicando no mais verde :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

não funfiou :s dai fiz o esquema do echo e apareceu o que registra no db que é 0

O Valor da DB é 0?

$quantidade vai multiplicar o valor do campo da tabela não é ,

Se o valor for 0:

$valor = 0;
$quantidade = 20;
$resultado = $valor*$quantidade;//0
$quantidade = 15;
$resultado2 = $valor*$quantidade;//0

Entendeu a logica 0 vezes qualquer numero é 0.

Compartilhar este post


Link para o post
Compartilhar em outros sites

SdiGabriel

Consegue Disponibilizar o arquivo para nós, preciso fazer algo como você vez..

Me ajuda ai para nao precisar programar do Zero.

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.