Ir para conteúdo

POWERED BY:

Arquivado

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

weslleysolo

[RESOLVIDO] Erro - gravando dados no BD a cada refrech (F5)

Recommended Posts

Amigos IM,tenho o seguinte escript

if(($ordem->info['payment_method'] == 'Boleto Bancário BB')) { tep_db_query("insert into boleto (boleto_id, valor_total, cliente) values ('" . (int)$n_pedido . "', '" . $ordem->info['total'] . "', '". $ordem->customer['firstname'] . ' ' . $ordem->customer['lastname']. "')");}

O que ele faz?...ve se a opção de pagamento escolhido é Boleto, se sim ele insere no BD aqueles dados ali...até ai beleza...o problema é que eu queria que inserisse no BD só depois q eu clicasse no botao confirmar, que seria esse:

echo tep_image_submit('confirmar.gif', CONFIRMAR_PEDIDO) . '</form>' . "\n";

quando chego nessa tela (confirmacao.php) ele já isere no BD os dados do boleto, como disse, quero que isso seja sómente quando eu clicar no bendito botao...sei q deva ser um pequeno ajusto no meu codigo, mas ta dificil pra mim e aqui é meu HELP. :unsure:

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso mesmo.. que você deve fazer eh o seguinte, coloca esse código que vai inserir em outra página, dai ao clicar no botao ele vai executar essa página...

Compartilhar este post


Link para o post
Compartilhar em outros sites

deixa eu tentar entender uma coisa...você esta na sua página do formulario, preenche e manda para outra página onde ele vai confirmar os dados, dai ele confirmando ele vai para outra página para inserir neh?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim... ate essa parte ae o posso voltar e alterar alguma coisa como forma de pagamento, frete, tals...e depois desta tela tem um arquivo.php q gera o processo e mostra a ultima tela de finalizacao....mas na tela de finalizacao nao estou conseguindo fazer inserir o (int)$n_pedido..esse bendito registro...ele só me aparece quando estou na tela anterior, mas causa esse problema que envia pro BD.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tipo, ele nao esta aparecendo pq essa ultima tela você não esta recebendo nenhum valor de formulario... você pode fazer o seguinte, na tela de confirmação você manda ele criar INPUTS do tipo hidden, dai quando você confirma ele manda esse formulario "invisivel" para a página que vai inserir

Compartilhar este post


Link para o post
Compartilhar em outros sites

entaum tenta fazer a seguinte forma, tenta colocar dentro de uma session os valores dos campos dai na pagina do insert você manda ele salvar os valores que estão lah...

Compartilhar este post


Link para o post
Compartilhar em outros sites

index.php

<form name="form1" method="post" action="confirma.php">  <p>Id Boleto: 	<input name="id_boleto" type="text" id="id_boleto">  </p>  <p>Valor: 	<input name="valor" type="text" id="valor">  </p>  <p>Cliente:   	<input name="cliente" type="text" id="cliente">  </p>  <p>	<input type="submit" name="Submit" value="Enviar"></p></form>

confirma.php

<?php	session_start();		$id_boleto = $_POST[id_boleto];	$valor = $_POST[valor];	$cliente = $_POST[cliente];			$_SESSION['id_boleto'] = $id_boleto;	$_SESSION['valor'] = $valor;	$_SESSION['cliente'] = $cliente;		echo "Id Boleto: $id_boleto <br>";	echo "Valor: $valor <br>";	echo "Cliente: $cliente <br><br>";		echo "<a href='cadastra.php'>Confirmo os dados...</a>";?>

cadastra.php

<?php	session_start();		tep_db_query("insert into boleto (boleto_id, valor_total, cliente) values ('$id_boleto', '$valor', '$cliente')");?>

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.