Ir para conteúdo

POWERED BY:

Arquivado

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

Lajus

Página para Impressão

Recommended Posts

Salve galera;

 

Seguinte, fiz um formulário em flash e utilizo uma página em asp para pegar as variaveis e executar 2 ações:

1ª - Cadastrar os dados do form em um banco de dados

2ª - Enviar estes dados por email

 

Estas tarefas estão sendo feitas sem problemas, o que gostaria de fazer agora é uma 3ª tarefa que seria criar uma página para o usuário imprimir os dados que ele preencheu, ou seja, não estou conseguindo dar um "Response.Write" na mesma página nem enviar as váriaveis para uma nova página

 

Qual seria a forma mais correta de fazer isso?

 

Segue abaixo o código simplificado (só com 2 variaveis) :

 

 

<%
' Abre conexão com Banco de Dados
set cn = Server.CreateObject("ADODB.Connection")
pathdb = "e:\home\dominio\dados\bd1.mdb"
cn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& pathdb
cn.CursorLocation = 3
Server.ScriptTimeout = 180

' carrega os dados vindos do form do flash
mensagem = ""
bd_nome		= Request.Form("nome")
bd_email		= Request.Form("email")


' se não existir insere no Banco de Dados
	sqlInsert = ""
	sqlInsert = sqlInsert & " insert into cadastro (  "
	sqlInsert = sqlInsert & " 					   bd_nome, "
	sqlInsert = sqlInsert & " 					   bd_email, "
	sqlInsert = sqlInsert & " 						) "
	sqlInsert = sqlInsert & " 		  values   ( "	
	sqlInsert = sqlInsert & " 				   '" & bd_nome &"', "
	sqlInsert = sqlInsert & " 				   '" & bd_email
	sqlInsert = sqlInsert & " 				   ) "
	cn.execute(sqlInsert)
	

' Envia o E-mail
nome		= Request("nome")
rg			= Request("email")

Dim BodyText

VB_CR_LF = chr(13) + chr(10)

BodyText = ""
BodyText = BodyText & "<strong>Nome: </strong>" + nome + " ( " + email + " ) " + VB_CR_LF

Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "localhost"

Mail.From = email
Mail.FromName = nome
Mail.AddAddress "teste@tteste.com.br", "Teste"
Mail.IsHTML = True
Mail.Subject = "Assistencia Técnica - Teste"
Mail.Body = BodyText

Mail.Send
Response.Write("&finish=ok")
SET mail = nothing

' fecha conexão do BD
cn.close()
set cn = nothing
%>

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho q uma solução seria enviar o mesmo conteúdo que esta indo por email, para uma nova página html (ou Asp).

Tem como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

envia o resultado das variáveis para uma sessão e chama em outra página

 

bd_nome = Request.Form("nome")
bd_email = Request.Form("email")

Session("bd_nome") = bd_nome
Session("bd_email") = bd_email

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Ted K'

 

Tentei fazer da forma q você sugeriu, mas como sou iniciante em asp talvez tenha feito alguma coisa errada.

 

No formulario (flash) o envio ficou assim:

 

CODE
stop();

import FlashForm.FormUp;

//

//criando um objeto FormUp

var contato:FormUp = new FormUp();

//

//definindo quais campos existem e suas especificações

contato._arrayField[0] = {mc:'nome', required:true};

contato._arrayField[1] = {mc:'email', required:true};

//

//local onde os campos estão

contato._form = this;

//arquivo server-side que envia e-mail

contato._serverFile = 'contato.asp';

//

contato.onSend = function() {

mcStatus.text = 'Aguarde, enviando...';

this._afterSend.ready = true;

};

//

//tratando erros (nesse caso dou um nextFrame nos campos com erro, mostrando um contorno vermelho)

contato.onError = function(arr) {

mcStatus.text = 'Preencha os campos corretamente';

for (var i in arr) {

var mc = arr.mc;

mc.nextFrame();

//

mc.field.onSetFocus = function() {

this._parent.prevFrame();

};

}

};

//ao concluir o envio

contato.onComplete = function() {

mcStatus.text = 'Sua mensagem foi enviada, Obrigado';

getURL("http://www.teste.com.br/sp/assist_form2.asp", "_blank", "POST");

};

 

//iniciar funcionamento

contato.init();

A página "contato.asp" (que recebe as variaveis e envia p/ o banco e para o email) ficou assim:

 

CODE
<%

' Abre conexão com Banco de Dados

set cn = Server.CreateObject("ADODB.Connection")

pathdb = "e:\home\dominio\dados\bd1.mdb"

cn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& pathdb

cn.CursorLocation = 3

Server.ScriptTimeout = 180

 

 

' carrega os dados vindos do form do flash

mensagem = ""

bd_nome = Request.Form("nome")

bd_email = Request.Form("email")

 

 

 

' se não existir insere no Banco de Dados

sqlInsert = ""

sqlInsert = sqlInsert & " insert into cadastro ( "

sqlInsert = sqlInsert & " bd_nome, "

sqlInsert = sqlInsert & " bd_email, "

sqlInsert = sqlInsert & " ) "

sqlInsert = sqlInsert & " values ( "

sqlInsert = sqlInsert & " '" & bd_nome &"', "

sqlInsert = sqlInsert & " '" & bd_email

sqlInsert = sqlInsert & " ) "

cn.execute(sqlInsert)

 

 

 

' Envia o E-mail

nome = Request("nome")

rg = Request("email")

 

Dim BodyText

 

VB_CR_LF = chr(13) + chr(10)

 

 

BodyText = ""

BodyText = BodyText & "<strong>Nome: </strong>" + nome + " ( " + email + " ) " + VB_CR_LF

 

 

Set Mail = Server.CreateObject("Persits.MailSender")

Mail.Host = "localhost"

 

 

Mail.From = email

Mail.FromName = nome

Mail.AddAddress "teste@tteste.com.br", "Teste"

Mail.IsHTML = True

Mail.Subject = "Assistencia Técnica - Teste"

Mail.Body = BodyText

 

 

Mail.Send

Response.Write("&finish=ok")

SET mail = nothing

 

 

Response.Write("1")

 

 

' fecha conexão do BD

cn.close()

set cn = nothing

%>

 

e a página "assist_form2.asp", que deveria mostrar o resultado, não esta mostrando as váriaveis, ela ficou assim:

 

<%

response.write "Nome: " & request.form("bd_nome")&"<br>"

response.write "E-mail: " & request.form("bd_email")

%>

 

e quando aparece no browser fica assim:

 

Nome:

E-mail:

 

Gostaria de saber se é possível a propria página "contato.asp" abrir outra página ou popup mostrando todas as variaveis.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas independente do que esta no flash, existe alguma maneira da página em asp abrir automaticamente outra página mostrando as variaveis.

 

Ex. Esta página esta recebendo as variaveis do flash e mandando para um email (isto esta funcionando), tem como ela mandar este mesmo conteudo para outra página?

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.