Ir para conteúdo

POWERED BY:

Arquivado

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

moninha_ms

Inserir dados e enviar por e-mail

Recommended Posts

Pessoal,

 

 

Alguém já fez ou sabe onde encontro um script que inclua campos no BD, mostre eles na tela e envie esses campos por email no mesmo programa.

 

Consigo inserir e mostrar na tela.

 

Consigo enviar a msg, mas quero saber como passar parâmetros do BD para a msg.

 

 

por exemplo, tenho 2 programas:

 

programa1.htm

que o formulário em html e usado apenas para você digitar seus dados e enviar para o gravar.asp.

 

 

grava.asp -

 

Esse programa faz o seguinte:

 

1) recebe os dados via request.form

exemplo: nome2 = request.form("txtnome")

 

2) conecta e insere os dados no bd

ex: sql = "INSERT INTO banco(nome) values ('" & nome2 & "')"

conn.execute(sql)

 

3) mostra os dados na tela via response.write

 

4) envia os dados inseridos por aspmail, inclusive o código gerado por autonumeração pelo BD

Aqui falta só conseguir enviar o mail mostrando o código gerado.

Eu consigo enviar o email, mas não sei como passar o parâmetro

 

<%=codigo%>

para o corpo da mensagem

Se fosse só enviar os dados sem o código, dava pra por os dados recebidos pelo request.form no corpo da msg

 

 

 

obrigada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi a dúvida. Você não conseguiu pegar o código do último registro que você cadastrou?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi a dúvida. Você não conseguiu pegar o código do último registro que você cadastrou?

 

Não amigo, o que eu não consegui foi enviar os dados ao usuário que se cadastrou

 

eu insiro os dados, nisso, ele gera um código de identificação.

 

aí, eu quero enviar esses dados para o email do administrador do sistema usando o aspmail ou cdonts, só que não consigo colocar no corpo do email esse código de identificação

Compartilhar este post


Link para o post
Compartilhar em outros sites

pelo que entendi...

você pode colocar os valores <%=codigo%>, no corpo do email, procure no fórum, por enviando mensagens de email em HML, onde no HTML, você monta sua mensagem com as variáveis que kiser

Compartilhar este post


Link para o post
Compartilhar em outros sites

pelo que entendi...

você pode colocar os valores <%=codigo%>, no corpo do email, procure no fórum, por enviando mensagens de email em HML, onde no HTML, você monta sua mensagem com as variáveis que kiser

 

Isso mesmo amigo xanburzum!!!!

 

 

Eu consegui fazer um script que envia email via aspemail, consegui montar a mensagem em HTML, mas a parte falta a parte de enviar esse <%=codigo%> no corpo do email, isso eu não descobri ainda como fazer.

 

Obrigada pela ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta como está seu código agora.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Posta como está seu código agora.

Oi Hargon,

 

 

Na verdade esse não é o código de produção, é apenas um teste num BD simples que se funcionar eu substituo pelos campos do BD do cliente:

 

________________________________________________________________________________

_____________________________________________

 

<!-- #include file="conexao.inc" -->
<%

Dim sql, produto, autor, genero, descricao, preco

'Dados da tabela cds recebidos pelo form

produto = Trim(request.form("txtproduto"))
autor = Trim(request.form("txtautor"))
genero = Trim(request.form("txtgenero"))
descricao = Trim(request.form("txtdescricao"))
preco = Trim(request.form("txtpreco"))



'Comando SQL para inserir os campos da tabela cds

SQL = "INSERT INTO cds(produto, autor, genero, descricao, preco) values ('" & produto & "','" & autor & "','" & genero & "','" & descricao & "', '" & preco & "')"
response.write(SQL) & ("<BR><BR>")
conn.execute(SQL)

response.Write("inserido com sucesso") 

' A inserção de dados gera por auto-numeração um cod_produto 


' Envia e-mail


'Sub envio()

vcorpo = ("<html xmlns=http://www.w3.org/1999/xhtml>")
vcorpo = vcorpo & ("<head>")
vcorpo = vcorpo & ("<meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' />")
vcorpo = vcorpo & ("<title>Texto HTML do meu e-mail de Teste</title>")
vcorpo = vcorpo & ("</head>")
vcorpo = vcorpo & ("<body>")
vcorpo = vcorpo & ("<table border='1' height='489' width='70%'>")
vcorpo = vcorpo & ("<tr><td height='19' colspan='2'><div align='center'><b>Meu formulário</b></div></td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'>Código do produto: </td>")
vcorpo = vcorpo & ("<td height='19'>")

' ----------------		quero saber como passo o cod_produto que não foi recebido via form e sim gerado por autonumeração ---------------------------

vcorpo = vcorpo & (" </td></tr>")


vcorpo = vcorpo & ("<tr><td height='19'>produto: </td>")
vcorpo = vcorpo & ("<td height='19'>")
vcorpo = vcorpo & (produto)
vcorpo = vcorpo & (" </td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'>Autor: </td>")
vcorpo = vcorpo & ("<td height='19'>") 
vcorpo = vcorpo & (autor) 
vcorpo = vcorpo & (" </td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'>Gênero: </td>")
vcorpo = vcorpo & ("<td height='19'>") 
vcorpo = vcorpo & (genero) 
vcorpo = vcorpo & (" </td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'>Descrição: </td>")
vcorpo = vcorpo & ("<td height='19'>") 
vcorpo = vcorpo & (descricao) 
vcorpo = vcorpo & (" </td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'>Preço: </td>")
vcorpo = vcorpo & ("<td height='19'>") 
vcorpo = vcorpo & (preco) 
vcorpo = vcorpo & (" </td></tr>")

vcorpo = vcorpo & ("<tr><td height='19'></td>")
vcorpo = vcorpo & ("<td height='19'>") 
vcorpo = vcorpo & (" </td></tr>")
vcorpo = vcorpo & ("<tr><td height='19'> </td>")
vcorpo = vcorpo & ("<td height='19'> </td></tr>")
vcorpo = vcorpo & ("<tr><td colspan='2'> </td></tr>")
vcorpo = vcorpo & ("</table>")
vcorpo = vcorpo & ("</body>")
vcorpo = vcorpo & ("</html>")

 
Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "smtp.mail.yahoo.com"
Mail.Port = 25
Mail.From = "moninha_ms@yahoo.com"
Mail.FromName = "Simone"
Mail.AddAddress Trim("moninha_ms@yahoo.com") , "Simone"
Mail.Subject = "Assunto de teste" 
Mail.Body = vcorpo
Mail.IsHTML = True
On Error Resume Next 

Mail.Send
   If Err.Number <> 0 Then 
				 Response.Write("<center><font face='verdana,tahoma,arial' size='2' color='#000000'>")	  
				 Response.Write("Ocorreu um erro ao tentar enviar e-mail para " & (Mail.AddAddress))
				 Response.Write("</font></center>")
				 Response.write("<hr noshade size='0' color='#C0C0C0'>")
   else   
	   mensagem = "Email enviado com sucesso para " & (Mail.AddAddress) & "<br>" 
	   Response.Write("<center><font face='verdana,tahoma,arial' size='2' color='#000000'>") 
	 Response.Write(mensagem)
				 Response.Write("Email enviado com sucesso para " & (Mail.AddAddress) & "<br>")
	 Response.Write("</font></center>") 
	 Response.write("<hr noshade size='0' color='#C0C0C0'>")	
   End if
	  Set Mail = Nothing
'Next
'End Sub

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi ao lê o código, sua dúvida é exatamente o que perguntei acima.

 

Você quer saber como pegar o código do produto inserido.

 

Para isso você terá que fazer uma consulta na tabela, utilizando a função MAX. Assim ela vai retornar o maior código. Esse é o último. O único problema, que é até difícil acontecer, mas existe a possibilidade, é que se dois usuários cadastrarei no mesmo segundo, você vai pegar o código errado. Por isso acho melhor criar o próprio código e já mantê-lo armazenado em uma variável, do que usar auto-numeração.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que entendi ao lê o código, sua dúvida é exatamente o que perguntei acima.

 

Você quer saber como pegar o código do produto inserido.

 

Para isso você terá que fazer uma consulta na tabela, utilizando a função MAX. Assim ela vai retornar o maior código. Esse é o último. O único problema, que é até difícil acontecer, mas existe a possibilidade, é que se dois usuários cadastrarei no mesmo segundo, você vai pegar o código errado. Por isso acho melhor criar o próprio código e já mantê-lo armazenado em uma variável, do que usar auto-numeração.

 

beleza amigo, é isso mesmo, entendi !!!!!

 

Mas você sabe qual a sintaxe correta para eu por o cod_produto no corpo da messagem????????

 

Vamos supor que crie um recordset rs dando um select max e comparando os dados inseridos com os dados digitados no form.

 

 

Como eu escrevo essa parte???????

 

vcorpo = vcorpo & ("<tr><td height='19'>Código do produto: </td>")

vcorpo = vcorpo & ("<td height='19'>")

 

vcorpo = vcorpo & ("<%=cod_produto%>) ou vcorpo = vcorpo & <%=rs("cod_produto")%>

 

vcorpo = vcorpo & (" </td></tr>")

 

 

 

Valeu pq já ajudou bastante !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quem criou o código postado acima? Pq no próprio código já tem essa resposta.

 

Seu código (produto):

vcorpo = vcorpo & ("<tr><td height='19'>produto: </td>")
vcorpo = vcorpo & ("<td height='19'>")
vcorpo = vcorpo & (produto)
vcorpo = vcorpo & (" </td></tr>")

Código do produto:

vcorpo = vcorpo & ("<tr><td height='19'>Código do produto: </td>")
vcorpo = vcorpo & ("<td height='19'>")
vcorpo = vcorpo & (rs("cod_produto")) ' ou então você pode armazenar em uma variável e utilizar apenas ela.
vcorpo = vcorpo & (" </td></tr>")

Compartilhar este post


Link para o post
Compartilhar em outros sites

Logo após o INSERT faça um SELECT utilizando exatamente os mesmos dados que acabaram de ser inseridos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Logo após o INSERT faça um SELECT utilizando exatamente os mesmos dados que acabaram de ser inseridos.

Salgado,

 

 

eu fiz esse select, mas o que não consigo é mostrar o código que acabou de ser inserido no corpo do email

 

 

vcorpo = vcorpo & ("<tr><td height='19'>Código do produto: </td>")

vcorpo = vcorpo & ("<td height='19'>")

 

' --- Aqui está meu problema. ---- não sei a sintaxe para mostrar o resultado do select no corpo da mensagem, acho que o aspemail não suporta tag asp...pq tenho que enviar por email esse código...

 

vcorpo = vcorpo & ("<%=cod_produto%>) ou vcorpo = vcorpo & <%=rs("cod_produto")%>

 

----------------------------------------------------------------------------------------------------------------------------------------------------------------

 

vcorpo = vcorpo & (" </td></tr>")

 

 

 

Mas valeu todo mundo que me ajudou aí !!!

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.