Jump to content
Eddy Fernandes

Enviar form com ASP após gravar dados no BD

Recommended Posts

Olá galera,

 

Estou desenvolvendo uma página com um form disparado para um link externo, mas antes preciso salvar os dados em um banco de dados. Não manjo muito de Javascript, então sou grato pela ajuda de quem puder ajudar. O código está assim:

 

Página do form:

<form action="URL-pra-onde-vao-os-dados-do-form" method="post" onSubmit="javascript:return Valida(this)">

Na mesma página do Form:

<script language="JavaScript">
function Valida(form) {
	var formulario = document.getElementById('id-do-form-aqui');
<%

	set BD=server.createobject("adodb.connection")
		BD.open MM_global_STRING
		Dim rsATV : Set rsATV = Server.CreateObject("adodb.recordset")
		rsATV.Open "usuarios",BD,3,3
	'Tentativa de correção de acentuação no BD bem sucedida.
	'Response.CharSet = "windows-1250"
	'Session.LCID = 1046'PADRÃO BRASILEIRO
	rsATV.AddNew
	rsATV("us_nome_real") = Request.Form("FNAME")
	rsATV("us_email") = Request.Form("EMAIL")
	rsATV("us_nome") = Request.Form("USUARIO")
	rsATV("us_senha") = Request.Form("SENHA")
	rsATV("us_confirme_senha") = Request.Form("CONFIRMESENHA")
	rsATV.Update
	rsATV.Close
%>
	formulario.submit();
	return false
};
end function
</script>

 

Os Form é enviado, o novo registro no banco é criado, mas sem os dados do form, ou seja, um registro em branco.

 

Desde já agradeço a ajuda.

 

 

Share this post


Link to post
Share on other sites

Desse Jeito é meio complicado...  remova ...

action="URL-pra-onde-vao-os-dados-do-form"

para ver se salva no seu banco...

 

depois você teria que reconstruir esse form novamente para enviar para o link externo...

 

uma dica tranquila para ser feita nesses casos seria salvar no seu banco via ajax ... mas você teria que manjar de javascript pois você colocaria a ação no onclick do botao submit... com isso os dois eventos aconteceria ao mesmo tempo... iria salva no seu banco e enviava para o link externo...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Roberto S. Santos
      Boa noite devs.
      Poderiam me ajudar ?
      Estou querendo fazer o seguinte em um formulário PHP...
      O usuário deve cadastrar a sua data e horário do uso na churrasqueira e quando chegar nesta data e no horário final ele apaga os dados do cadastro desta reserva.
      Como posso fazer isto com PHP ?
      Temos...
      data reserva
      hora reserva  (hora inicial)
      hora final (já vai estar pré definida na base de dados)
      Banco de Dados : clientes
      Tabela : reserva
      Deus abençoe a todos.
       
    • By Person
      Estou fazendo um protótipo de e-commerce com aps clássico e sql server, na parte de administração, o usuário administrativo pode alterar o status do pedido,  para isso ele clica no botão de alterar na pagina principal e é redirecionado para um formulário onde tenho as options, para que ele mude o status, coloquei um botão para que ele passe os parâmetros  (id_pedido e id_status_pedido) para a pagina de manutenção, onde é feito o update e o envio de e-mail com as atualizações. Mas quero retirar esse botão e fazer com que, assim que eu clique em uma opção, ele altere, sem eu precisar ser redirecionado para a tela de manutenção, isso com o Ajax se possível.
       
      <body> <% call Abredb() cod = Request.QueryString("cod") evt = Request.QueryString("evt") if cod <> "" then cod = cint(cod) end if if ucase(evt) = "ALT" then sql = "exec SP_TR32_status_frm_SEL" 'Response.Write(sql) 'Response.End() set rs = dbWeb.execute(sql) estrato = rs("id_status_pedido") bot = "Alterar" end if %> <div class="container"> <div class="titulo">Formulario</div> <form action="manu_pedido.asp" method="post" enctype="multipart/form-data"> <div class="detalhes-formulario"> <div class="input-box"> <span class="detalhes">status</span> <select class="form-control" name = "status"> <% do while not rs.eof%> <option value="<%=rs("id_status_pedido")%>"><%=rs("descricao")%></option> <% rs.movenext loop rs.close set rs = nothing %> </select> </div> </div> <button><a href="/treinamento/Thau/mini_mercado/adm/manu_pedido.asp?evt=alt&cod="<%=cod%>"&estrato="<%rs("id_status_pedido")%> </form> </div> <br> </body> <%call Fechadb()%> </html> Abaixo está o código da minha pagina de manutenção, no qual acontece a alteração do status
      <% Function ZerosEsquerda(Num,tam) Dim Zero Num = Trim(Num) Zero = "" For i = Len(Num) To tam - 1 Zero = "0" & Zero Next ZerosEsquerda = Trim(Zero & Num) End Function byteCount = Request.TotalBytes RequestBin = Request.BinaryRead(byteCount) Set UploadRequest = CreateObject("Scripting.Dictionary") BuildUploadRequest RequestBin 'opc = request.QueryString("opc") 'if opc = "" then 'cod = UploadRequest.Item("hfcod").Item("Value") 'botao = UploadRequest.Item("botao").Item("Value") 'estrato = UploadRequest.Item("estrato").Item("Value") 'end if session.LCID = 1046 call Abredb() if botao = "Alterar" then ' ALTERANDO OS DADOS RECEBIDOS NA TABELA sql = "exec SP_TR32_pedido_UPD "&cod&", '"&estrato&"'" 'response.write sql 'response.end dbWeb.execute(sql) str_html = "" str_html = str_html & "<HTML><BODY BGCOLOR=#0000FF>" str_html = str_html & "<h1>produtos</h1>" sql ="SP_TR32_email__itens_sel "&cod&"" set rs = dbWeb.execute(sql) str_html = str_html & "<table>" str_html = str_html & "<thead>" str_html = str_html & " <tr>" str_html = str_html & "<th>Produtos</th>" str_html = str_html & "<th>quantidade</th>" str_html = str_html & " <th>Total</th>" str_html = str_html & "</tr>" str_html = str_html & " </thead>" str_html = str_html & "<tbody>" do while not rs.eof str_html = str_html & "<tr>" str_html = str_html & "<td >"&rs("produto")&"</td>" str_html = str_html & "<td >"&rs("quantidade")&"</td>" str_html = str_html & "<td >"&rs("total")&"</td>" str_html = str_html & "</tr>" rs.movenext loop rs.close set rs = nothing str_html = str_html & " </tbody>" str_html = str_html & "</table>" str_html = str_html & "</BODY></HTML>" sql = "SP_TR32_email_sel "&cod&"" set rs = dbWeb.execute(sql) if estrato<>"" then Set ObjMail = Server.CreateObject("Cdonts.Newmail") objMail.Subject = "Atualização de pedido" objMail.From = "Porto Dourado <contato@email.websupply.com.br>" objMail.To = "request("email")" objMail.BodyFormat = 0 objMail.MailFormat = 0 objMail.Body = "Olá"&" "&rs("nome")&" "&rs("sobrenome")&", </br> Houve uma atualização em seu pedido pedido: "&rs("id_pedido")&" </br> o status mudou para: "&rs("descricao")&" </br> endereço de entrega: "&rs("cep")&", "&rs("rua")&", "&rs("bairro")&", "&rs("numero")&", "&rs("cidade")&", "&rs("Uf")&" </br>Total pedido: "&rs("total_pedido")&" </br> "& str_html &" </br></br>"&" Atentamente,"&" </br> "&"Equipe Porto dourado"&" </br></br> "&"Para entrar em contato com a equipe de suporte, entre em contato com o email ou ligue para nossa central no numero " objMail.Send Set objMail = nothing envio = true %> <script> alert('email com alteração enviado com sucesso!'); </script> <% end if if estrato = 6 then sql = "exec SP_TR32_adm_data_envio_UPD "&cod&"" dbWeb.execute(sql) end if if estrato = 4 then sql = "exec SP_TR32_adm_data_entregue_UPD "&cod&"" dbWeb.execute(sql) end if %> <script> alert("Dados alterado com sucesso!") parent.location = "cst_pedido.asp" </script> <% end if %> <%call Fechadb()%>  
    • By patrickjnunes1995
      Bom dia, estou tendo dificuldades em recuperar dados de uma tabela do banco de dados, pelo PHP.
      <?php require_once('conexao_bd.php'); $consulta = "SELECT * FROM table"; $con = $mysqli->query($consulta) or die ($mysql->error); echo $dado["nome"]; ?>  
      E o arquivo conexão_bd.php está ok.
       
      Não pude encontrar em nenhuma página pela internet essa solução.
       
      Quero que exiba na página PHP, valores como algum nome, gravado na tabela do banco de dados.
       
      Desde já obrigado.
    • By Priscila1307
      CREATE TABLE CLIENTE( Idcliente int, nome varchar(60), dtnascimento date, cpf varchar(11), CONSTRAINT pk_cliente PRIMARY KEY (Idcliente) ); CREATE TABLE PEDIDO( Idpedido int, Idcliente int, datapedido date, vltotal decimal(10,2), CONSTRAINT pk_pedido PRIMARY KEY (Idpedido), CONSTRAINT fk_pedido_cliente FOREIGN KEY (Idcliente) REFERENCES CLIENTE(Idcliente) ); CREATE TABLE PRODUTO( Idproduto int, descricao varchar(100), quantidade int, CONSTRAINT pk_produto PRIMARY KEY (Idproduto) ); CREATE TABLE ITEMPEDIDO( Idpedido int, Nritem int, valor decimal(10,2), quantidade int, Idproduto int, CONSTRAINT pk_itempedido PRIMARY KEY (Idpedido, Nritem), CONSTRAINT fk_Idpedido FOREIGN KEY (Idpedido) REFERENCES PEDIDO (Idpedido), CONSTRAINT fk_itempedido_produto FOREIGN KEY (Idproduto) REFERENCES PRODUTO (Idproduto) ); CREATE TABLE LOG( Idlog int, data date, descricao varchar(255), CONSTRAINT pk_log PRIMARY KEY (Idlog) ); INSERT INTO CLIENTE VALUES (1, 'Hugo Batista', TO_DATE('05/02/1990', 'DD/MM/YYYY'), '51898608253'); INSERT INTO CLIENTE VALUES (2, 'José Antonio', TO_DATE('02/05/1985', 'DD/MM/YYYY'), '51144722241'); INSERT INTO CLIENTE VALUES (3, 'João Carlos', TO_DATE('03/05/1993', 'DD/MM/YYYY'), '84882273292'); INSERT INTO CLIENTE VALUES (4, 'Edivaldo Santana', TO_DATE('01/06/2000', 'DD/MM/YYYY'), '30609426176'); INSERT INTO CLIENTE VALUES (5, 'Cristina Oliveira', TO_DATE('16/08/1999', 'DD/MM/YYYY'), '56313586700'); INSERT INTO CLIENTE VALUES (6, 'Artur da Silva', TO_DATE('06/05/2001', 'DD/MM/YYYY'), '67491246583'); INSERT INTO CLIENTE VALUES (7, 'Adrina Domingues', TO_DATE('01/02/1972', 'DD/MM/YYYY'), '22044617250'); INSERT INTO PRODUTO VALUES (1, 'SAMSUNG J7 - PRIME', 10); INSERT INTO PRODUTO VALUES (2, 'SAMSUNG J5 - PRIME', 10); INSERT INTO PRODUTO VALUES (3, 'IPHONE X', 10); INSERT INTO PRODUTO VALUES (4, 'MOTO G 5S', 10); INSERT INTO PRODUTO VALUES (5, 'IPHONE 6S', 10); INSERT INTO PEDIDO VALUES (1, 4, TO_DATE('10/03/2018', 'DD/MM/YYYY'), 1400.99); INSERT INTO ITEMPEDIDO VALUES (1, 1, 800.99, 1, 1); INSERT INTO ITEMPEDIDO VALUES (1, 2, 600.00, 1, 2); INSERT INTO PEDIDO VALUES (2, 2, TO_DATE('17/03/2018', 'DD/MM/YYYY'), 1349.50); INSERT INTO ITEMPEDIDO VALUES (2, 1, 749.50, 1, 4); INSERT INTO ITEMPEDIDO VALUES (2, 2, 600.00, 1, 2); INSERT INTO PEDIDO VALUES (3, 1, TO_DATE('20/03/2018', 'DD/MM/YYYY'), 2590.10); INSERT INTO ITEMPEDIDO VALUES (3, 1, 1800.71, 1, 5); INSERT INTO ITEMPEDIDO VALUES (3, 2, 789.39, 1, 4); INSERT INTO PEDIDO VALUES (4, 5, TO_DATE('21/03/2018', 'DD/MM/YYYY'), 2590.10); INSERT INTO ITEMPEDIDO VALUES (4, 1, 5099.00, 1, 3); INSERT INTO PEDIDO VALUES (5, 7, TO_DATE('10/03/2018', 'DD/MM/YYYY'), 1800.00); INSERT INTO ITEMPEDIDO VALUES (5, 1, 600.00, 3, 2); "Crie um select que exibe quais são os três PRODUTOS com a maior quantidade de PEDIDOS. Exiba o nome e o código do produto"
       
      Oi pessoal. por favor preciso da ajuda de vocês . 
      Eu queria criar um SELECT que exiba os três PRODUTOS com a maior quantidade de PEDIDOS.
      Retornando nome do produto ( PRODUTO.DESCRICAO )  e  o código dele ( PRODUTO.IDPRODUTO )
       
      Eu tentei das seguintes formas mas não consegui . estou novinha ainda em oracle
       
       
      SELECT PRODUTO.DESCRICAO, PRODUTO.IDPRODUTO, ITEMPEDIDO.QUANTIDADE FROM ITEMPEDIDO, PEDIDO, PRODUTO WHERE ITEMPEDIDO.IDPEDIDO = PEDIDO.IDPEDIDO AND PRODUTO.IDPRODUTO = ITEMPEDIDO.IDPRODUTO GROUP BY IDPRODUTO  
      neste código só roda sem erro se eu tirar o GROUP BY IDPRODUTO.  Mas não gera o resultado esperado 

       
      SELECT ITEMPEDIDO.IDPRODUTO, COUNT(*) AS VENDIDO FROM ITEMPEDIDO GROUP BY IDPRODUTO ORDER BY VENDIDO DESC  
       
      Aqui eu até consegui chegar perto mas não consegui acrescentar o nome do produto ( que é PRODUTO.DESCRICAO) e o produto com idproduto 2 ( que é o J5 ) não são só 3 vendidos. SÃO 5 !!! ai ai ai ai
       
      ....e apos muita batalha eu consegui fazer isso ... que tbm ainda não é o ideal
       
      SELECT * FROM (SELECT ITEMPEDIDO.IDPRODUTO, COUNT(*) AS VENDIDO FROM ITEMPEDIDO GROUP BY IDPRODUTO ORDER BY VENDIDO DESC) WHERE ROWNUM <4  

       
      ... demorei horrores pra fazer esse WHERE ROWNUM <4  rodar sem erro... pois é pessoal. só historia triste ! kkkkk
       
       
      Agora estou tentando esse aqui mas não terminei 
       
      SELECT PRODUTO.DESCRICAO AS NOME, ITEMPEDIDO.IDPRODUTO FROM PRODUTO, ITEMPEDIDO WHERE PRODUTO.IDPRODUTO = ITEMPEDIDO.IDPRODUTO
       
       
      acabei parando no meio do caminho e decidi recorrer ao imasters ! 
       
      vou continuar tentando ... sera que consigo antes de alguem aparecer aqui ? rsrsrs
       
      obrigada ! boa sorte pessoal.
       
       
       
      ah ! já ia esquecendo estou usando o livesql.oracle.com
       
      e vou deixar aqui tbm a consulta das tabelas 
       
       

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.