Ir para conteúdo

POWERED BY:

Arquivado

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

PRISCILA STOCHINI

Envio de dados duplicado e parou de enviar o email..

Recommended Posts

Pessoal, estava tudo funcionando, mas começou a dar um erro de envio de email duplicado, mas um deles sem nada...ai fui mexer no código e acho que bagunçou tudo, tentei voltar tudo ao que estava, mas acho que faltou algo..Quem pode me ajudar...eu passo os códigos pra visualizar os erros, viciei no código, não estou achando onde pode estar!!!!E agora começou a inserir duplicado no Banco tb!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Priscila sem querer ser chato nem nada, mas tente resumir seus tópicos em somente um pq você colco varios tópicos onde as duvidas estão relacionadas!!

Quanto ao código posta a parte que você necessita de ajuda entre as tags" "

para que possmos te ajudar!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque o trecho de codigo que insere as informações duplicadas

Compartilhar este post


Link para o post
Compartilhar em outros sites
<!--#include file="conectando.asp"--><title>Multiplus - Softwares Técnicos</title><%Vusuario = Request.Form("usuario")Vcontato = Request.Form("contato")Vcodigo = Request.Form("codigo")Vemail = Request.Form("email")Vddd = Request.Form("ddd")Vtel = Request.Form("tel")Vsoftware = Request.Form("software")Vversao = Request.Form("versao")Vrelease = Request.Form("release")Vwin = Request.Form("win")Vversaoauto = Request.Form("versaoauto")Vtipo = Request.Form("tipo")Vresumo = Request.Form("resumo")Vduvida = Request.Form("duvida")Vtecnico = Request.Form("tecnico")Vresposta = Request.Form("resposta")Varquivo = Request.Form("arquivo")'----------------------------------------------------'sessions para uso de dados no envio de mail ao fazer uploadSession("Vcontato") = Request.Form("contato")Session("Vresumo") = Request.Form("resumo")Session("Vduvida") = Request.Form("duvida")' Sobre pendencia e data não achei nada sobre a referencia e coloquei os de baixo só para não dar erro no DB ai você arruma depois ta.sql = "INSERT into suptec ([data], [usuario], [contato], [codigo], [email], [ddd], [tel], [software], [versao], [release], [win], [versaoauto], [tipo], [resumo], [duvida], [arquivo], [resposta], [tecnico], [pendencia]) values (#"& Now &"#,'"&Vusuario&"','"&Vcontato&"','"&Vcodigo&"','"&Vemail&"','"&Vddd&"','"&Vtel&"','"&Vsoftware&"','"&Vversao&"','"&Vrelease&"','"&Vwin&"','"&Vversaoauto&"','"&Vtipo&"','"&Vresumo&"','"&Vduvida&"', '"&Varquivo&"' ,'"&Vresposta&"','"&Vtecnico&"', true)"Set rs = bco.Execute(sql)'selecionando o registro cadastrado para preparar o envio de emailsql = "Select * from suptec where codigo = '"&Vcodigo&"'" [...]

Compartilhar este post


Link para o post
Compartilhar em outros sites

você da um request .form e depois guarda numa session de novo a mesma informação naum seria mais facil faze tudo numa session ou em uma variavel com request.form ao inves de fazer as duas coisas?

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas dessa pagina voce manda pra onde?? tem algum redirect ou alguma coisapois é estranho inserir duplicado pois so tem um insert ali

Compartilhar este post


Link para o post
Compartilhar em outros sites

<!--#include file="conectando.asp"--><title>Multiplus - Softwares Técnicos</title><%Vusuario = Request.Form("usuario")Vcontato = Request.Form("contato")Vcodigo = Request.Form("codigo")Vemail = Request.Form("email")Vddd = Request.Form("ddd")Vtel = Request.Form("tel")Vsoftware = Request.Form("software")Vversao = Request.Form("versao")Vrelease = Request.Form("release")Vwin = Request.Form("win")Vversaoauto = Request.Form("versaoauto")Vtipo = Request.Form("tipo")Vresumo = Request.Form("resumo")Vduvida = Request.Form("duvida")Vtecnico = Request.Form("tecnico")Vresposta = Request.Form("resposta")Varquivo = Request.Form("arquivo")'----------------------------------------------------'sessions para uso de dados no envio de mail ao fazer uploadSession("Vcontato") = Request.Form("contato")Session("Vresumo") = Request.Form("resumo")Session("Vduvida") = Request.Form("duvida")' Sobre pendencia e data não achei nada sobre a referencia e coloquei os de baixo só para não dar erro no DB ai você arruma depois ta.sql = "INSERT into suptec ([data], [usuario], [contato], [codigo], [email], [ddd], [tel], [software], [versao], [release], [win], [versaoauto], [tipo], [resumo], [duvida], [arquivo], [resposta], [tecnico], [pendencia]) values (#"& Now &"#,'"&Vusuario&"','"&Vcontato&"','"&Vcodigo&"','"&Vemail&"','"&Vddd&"','"&Vtel&"','"&Vsoftware&"','"&Vversao&"','"&Vrelease&"','"&Vwin&"','"&Vversaoauto&"','"&Vtipo&"','"&Vresumo&"','"&Vduvida&"', '"&Varquivo&"' ,'"&Vresposta&"','"&Vtecnico&"', true)"Set rs = bco.Execute(sql)'selecionando o registro cadastrado para preparar o envio de emailsql = "Select * from suptec where codigo = '"&Vcodigo&"'"'executando recordset para pesquisar se os dados foram cadastradosSet rs = bco.Execute(sql)'verificando se houve erro, se não houve envia por emailif rs.eof then response.write("Registro não encontrado.Erro na gravação")else'definimos o endereço de email que irá enviar o emailVemail = "teste@cype.com.br"'criamos o obejto do cdontsSet EnviarMail = Server.CreateObject("CDONTS.NewMail")'recebe o valor do recordset com o email cadastradoEnviarMail.To = rs("email")'recebe o email de quem envia da variavel VemailEnviarMail.From = Vemail'Assunto do emailEnviarMail.Subject = "Confirmação de Cadastro da Dúvida"'corpo do email armazenado na variavelHTML = "<!DOCTYPE HTML PUBLIC ""-//IETF//DTD HTML//EN"">"HTML = HTML & "<html>"HTML = HTML & "<head>"HTML = HTML & "<meta http-equiv=""Content-Type""" HTML = HTML & "content=""text/html; charset=iso-8859-1"">" HTML = HTML & "<title>CONFIRMAÇÃO DE ENVIO DA DÚVIDA</title>" HTML = HTML & "</head>" HTML = HTML & "<body bgcolor=""#FFFFFF"">"HTML = HTML & "<p align=""center""><span style=""font-family: Arial, Helvetica, sans-serif; font-size: 24px"" color=""#FF0000"">SIM - Suporte por Internet MULTIPLUS</span><BR><BR>"HTML = HTML & "<p align=""center""><span style=""font-size: 18px; font-family: Arial, Helvetica, sans-serif"">Sua dúvida foi recebida com sucesso e em breve o Departamento de Suporte Técnico da MULTIPLUS irá respondê - la.</span> </p><BR><BR><BR>"HTML = HTML & "</body>"HTML = HTML & "</html>"'propriedade recebe a variavel do corpo do emailEnviarMail.Body = HTMLEnviarMail.Importance = 1EnviarMail.BodyFormat = 0EnviarMail.MailFormat = 0EnviarMail.Send 'fecha o objeto CDONTSSet EnviarMail = NothingIf Err.Number <> 0 Thenresponse.write("Erro:" & Err.Description &".")Elseresponse.write("Email Enviado")End ifEnd if'fechando e destuindo a conexãobco.CloseSet bco = Nothing' caso o usuário selecione sim para anexar ele é re-direcionado para a pagina de upload, caso contrario finalina o cadastro.if Request.Form("anexo") = "Sim" thenResponse.Redirect("Duvida_SIM.asp")elseURL = "http://www.multiplus.com/SIM/PRINCIPALXYZ000.HTM"Response.Redirect(URL)End if %>

Código completo...

 

Duvida SIM é apenas um form.. que vai para envia duvida sim...

 

<!-- #include file = "funcoes_upload.asp" --><!--#include file="conectando.asp"--><%'Chamando Funções, que fazem o Upload funcionarbyteCount = Request.TotalBytesRequestBin = Request.BinaryRead(byteCount)Set UploadRequest = CreateObject("Scripting.Dictionary")BuildUploadRequest RequestBin' Tipo de arquivo que esta sendo enviadotipo_arquivo = UploadRequest.Item("arquivo").Item("ContentType")' Caminho completo dos arquivos enviadoscaminho_arquivo = UploadRequest.Item("arquivo").Item("FileName")' Nome dos arquivos enviadosnome_arquivo = Right(caminho_arquivo,Len(caminho_arquivo)-InstrRev(caminho_arquivo,"\"))' Conteudo binario dos arquivos enviadosarquivo = UploadRequest.Item("arquivo").Item("Value")'pasta onde as imagens serao guardadaspasta = Server.MapPath("obras/")nome_arquivo = "/"&nome_arquivo' pasta + nome dos arquivosVarquivo = "obras" + nome_arquivo' Fazendo o Upload do arquivo selecionadoif Varquivo <> "" thenSet ScriptObject = Server.CreateObject("Scripting.FileSystemObject")Set MyFile = ScriptObject.CreateTextFile(pasta & nome_arquivo)For i = 1 to LenB(arquivo)MyFile.Write chr(AscB(MidB(arquivo,i,1)))NextMyFile.Closeend if'============ ENVIO DO E-MAIL =============HTML = "<!DOCTYPE HTML PUBLIC ""-//IETF//DTD HTML//EN"">"HTML = HTML & "<html>"HTML = HTML & "<head>"HTML = HTML & "<meta http-equiv=""Content-Type""" HTML = HTML & "content=""text/html; charset=iso-8859-1"">" HTML = HTML & "<title>DÚVIDAS COM ANEXOS</title>" HTML = HTML & "</head>" HTML = HTML & "<body bgcolor=""#FFFFFF"">"HTML = HTML & "<p style=""font-family: Arial, Helvetica, sans-serif; font-size: 24px"">MULTIPLUS</span><br/>"HTML = HTML & "<span style=""font-size: 12px"">Softwares Técnicos</span></p>"HTML = HTML & "<p style=""font-size: 18px; font-family: Arial, Helvetica, sans-serif"">Dúvida com anexo enviada através do site</p>"HTML = HTML & "<font size=""2"" face=""arial"">"HTML = HTML & "<B>Usuário: </B>" & Session("Vcontato") & "<BR><BR>"HTML = HTML & "<B>Assunto da Dúvida: </B>" & Session("Vresumo") & "<BR>"HTML = HTML & "<B>Dúvida: </B>" & Session("Vduvida")& "<BR><BR>"HTML = HTML & "<B>Anexo: </B>" & nome_arquivo & "<BR><BR>"HTML = HTML & "<p style=""font-size: 18px; font-family: Arial, Helvetica, sans-serif"">ATENÇÃO! Verifique e responda a dúvida do usuário pelo site www.multiplus.com/suporte/acessointerno.asp, aqui é só o arquivo para visualização da dúvida.</p>"HTML = HTML & "<font size=""2"" face=""arial"">"HTML = HTML & "</font>"HTML = HTML & "</body>"HTML = HTML & "</html>"'-----------------------------------------------------------------------------------------------------------------------------------Server.ScriptTimeout = 1000'-----------------------------------------------------------------------------------------------------------------------------------varanexo = Server.MapPath(Varquivo)'-----------------------------------------------------------------------------------------------------------------------------------Set myMail = CreateObject("CDONTS.NewMail") myMail.From = "teste@cype.com.br" myMail.To = "teste@cype.com.br"myMail.Subject = "DÚVIDAS DO SIM COM ANEXO - VIA SITE"myMail.BodyFormat = 0 myMail.MailFormat = 0myMail.Attachfile varanexomyMail.Body = HTML myMail.Send '-----------------------------------------------------------------------------------------------------------------------------------Set myMail = Nothing '-----------------------------------------------------------------------------------------------------------------------------------Set FSO = Server.CreateObject("Scripting.FileSystemObject")If Fso.FileExists(varanexo) ThenSet anexo = FSO.GetFile(varanexo)anexo.deleteend if'-----------------------------------------------------------------------------------------------------------------------------------' finaliza o cadastroURL = "http://www.multiplus.com/SIM/PRINCIPALXYZ000.HTM"Response.Redirect(response.write("<script>location = '/SIM/PRINCIPALXYZ000.HTM';alert('Seu email foi enviado com sucesso!.')</script>")) %>

Esse email está tudo certo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo que percebi, acho que os cadastro duplicados estão indo por dois motivos.. sequencialmente 1 sim 1 não... ou pelo botão enviar esta mto sensivel..Como eu poderia fazer para não poder enviar a mesma mensagem duas vezes seguidas, acho que seria um forma de não duplicar os dados...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, no meu código tem uma parte assim...:[...]'verificando se houve erro, se não houve envia por emailif rs.eof then Response.Write("Registro não encontrado. Erro na gravação")else[...]A mensagem de erro que dá é essa...Registro não encontrado. Erro na gravaçãoe logo depois da o alert que tem mais pra baixo do código como se tivesse enviando o email....

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça um response.write no sql que está nesse trecho

 

 

 

'executando recordset para pesquisar se os dados foram cadastradosSet rs = bco.Execute(sql)'verificando se houve erro, se não houve envia por emailif rs.eof then response.write("Registro não encontrado.Erro na gravação")else

veja se está sendo gravado corretamente no banco os dados

 

certamente seu problema está nos if, você não tem mais o arquivo que funcionava enviando duplicado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

se fosse problema no email não daria problema na pesquisa, verifique se os dados estão sendo gravados corretamente

Compartilhar este post


Link para o post
Compartilhar em outros sites

veja como está essa linhasql = "Select * from suptec where codigo = '"&Vcodigo&"'"provavelmente esteja passando o Vcodigo errado ou em branco, por isso não encontra na tabela pra poder recuperar o email e enviar a mensagem por email

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.