cabral51 0 Denunciar post Postado Julho 3, 2006 Seguinte to abrindo este tópico pra facilitar a leitura e a ajuda já que o outro está com muitas informações... Eu tenhu um formulário com um select de onde aparecem emails vindo do banco relacionado ao usuario e tb uma opção com todos, onde o usuário escolhe o email para qual deve ser enviado uma informação ou escolhe todos e o email será enviado para todos os emails relacionados a este usuário;. Aqui o código do formulário: <% @Language=VbScript %><% Option Explicit %><!--#include file="bibconexao.asp"--><% RESPONSE.BUFFER = TRUE session.LCID = 1046 Dim banco,tbBanco,tbBanco1,tbBanco2,msg,strsql,bancario,entid,codigox,empresa,wcor,listar,listar2,selectcampo,email,todos1,email1,email2,todos entid=trim(request.QueryString("entid")) codigox=trim(request.QueryString("codigox")) email2=trim(request.form("email1")) todos1=trim(request.form("todos")) call abre_banco %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Untitled Document</title></head><body> <form action="envia_email.asp" method="get"> <select name="email" size="4" multiple> <option>selecione os campos para quem deseje enviar os emails</option> </br> <option selected>todos </option> <% StrSql="Select email from clientes" StrSql= StrSql & " where email is not null" StrSql= StrSql & " order by email" set tbBanco1=banco.Execute(strSQL) while not tbbanco1.eof %> <option value="email1"><% =tbbanco1("email")%></option> <% tbbanco1.movenext wend tbBanco1.Close set tbBanco1=Nothing%> </select> <input name="envia_email" type="submit" id="envia_email" value="Enviar Email"> </form> <p> </p></body></html><%call fecha_banco%> e aki o código do envia email: <% @Language=VbScript %><% Option Explicit %><!--#include file="bibconexao.asp"--><% RESPONSE.BUFFER = TRUE session.LCID = 1046' Banco de Dados e Tabelas' Variáveis Webbras Dim banco,tbBanco,tbBanco1,tbBanco2,msg,strsql,bancario Dim entid,codigox,empresa,wcor,listar,listar2,selectcampo,todos1,email1,email2,todos,i,x,j ' Dim para,assunto,nome,mensagem,email,id_loja,de,nome_loja,strsql,emails,tbbras1,telefone codigox=request.QueryString("codigox") entid=request.QueryString("entid") todos1=trim(request.form("todos")) todos1=replace(todos1,"'","´") call abre_banco for i=0 to 255 email2=trim(request.form("Email1")) email2=replace(email2,"'","´") if "email2"= "email1" then StrSql= "Select email from clientes where Email=" & email2 Set tbbanco1=banco.execute(strsql) end if Next if "todos1"= "todos" then x=0 Do until x=255 StrSql= "Select email from clientes" StrSql= StrSql & "where email is not null" ' StrSql= StrSql & "and codi.codicodi=cliente.codi" set tbBanco1=banco.Execute(strSQL) x=x+1 Loop while not tbbanco1.eof set Email = server.createobject("CDONTS.NewMail") email.From = "felipecabral1451@msn.com" email.To = "felipecabral1451@msn.com" email.Subject = Teste email.Body = "Teste de conteúdo" email.Send set Email = nothing tbbanco1.movenext wend tbBanco1.Close set tbBanco1=Nothing call fecha_bancoend if%> ele não está enviando o email eu devo estar errando nos loops e com certeza na lógica, alguém pode ajudar??? Compartilhar este post Link para o post Compartilhar em outros sites
daniloprates 0 Denunciar post Postado Julho 3, 2006 Cara, não entendi o porquê desse loop: Do until x=255Outra coisa, não tem nenhum erro nessa linha?StrSql= StrSql & "and codi.codicodi=cliente.codi". Não seria codi.codi? . Tem certeza que está pegando os dados corretos colocando "cliente.codi"? Sugiro você fazer um teste, colocando assim: StrSql= "Select email from clientes" StrSql= StrSql & "where email is not null" StrSql= StrSql & "and codi.codicodi=cliente.codi"Response.Write(StrSql)Response.End() Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 3, 2006 Cara, não entendi o porquê desse loop: Do until x=255Outra coisa, não tem nenhum erro nessa linha?StrSql= StrSql & "and codi.codicodi=cliente.codi". Não seria codi.codi?. Tem certeza que está pegando os dados corretos colocando "cliente.codi"?Sugiro você fazer um teste, colocando assim:StrSql= "Select email from clientes" StrSql= StrSql & "where email is not null" StrSql= StrSql & "and codi.codicodi=cliente.codi"Response.Write(StrSql)Response.End() Muito obrigado pela visualização do poste, hehe mais naum tem erro não, o cara do trampo que fez o bd q eh burro hAuehae, mas ta certinhu esta parte está correta, só a parte do envia email que esta errada, quanto ao loop ali que você disse sim está errado era só para fazer um teste, queria que me ajudasse a solucionar não to conseguindo pensar numa lógica, agradeço desde já Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 3, 2006 Alguém me ajuda isso eh urgênciaObrigado Compartilhar este post Link para o post Compartilhar em outros sites
daniloprates 0 Denunciar post Postado Julho 3, 2006 Cara, não estou com tempo agora para analizar o código, mas sugiro que você faça testes para localizar onde está o erro. Por exemplo, você sabe se o erro está na parte do formulário, do select ou do envio do email?Abraços e boa sorte. Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 3, 2006 Cara, não estou com tempo agora para analizar o código, mas sugiro que você faça testes para localizar onde está o erro. Por exemplo, você sabe se o erro está na parte do formulário, do select ou do envio do email?Abraços e boa sorte.entaum na parte do select, naum está pq ele mostra todos os emails que esta no banco de daods referente a algumusuario, suponhamos que você seja um empresario e tenha 5 emails de clientes, quando você entra ele mostra os 5 emails dos seus clientes, agora para que eu envie o email para os seus clientes que ta dando erro, erro naum, ele so naum envia Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 3, 2006 Po pessoal da uma força ae to empacado Compartilhar este post Link para o post Compartilhar em outros sites
daniloprates 0 Denunciar post Postado Julho 3, 2006 Os arquivos já estão on-line? Pq pelo IIS geralmente não dá pra testar esses envios de e-mail. Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 3, 2006 entaum danilão tao online da uma olha la:www.grupomercosul.com.br/select/selectemail.aspquando você seleciona os nomes para enviar ele envia mas naum chega no email Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 ae galera ontem naum obtive muitas respostas ve se da uma ajudinha hj ae?? Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 cara, tu postou no outro topico e nesse ..fica dificil ajudar assim...vamos manter somente nesse topico ok?Bom, em que ponto esta parado? qual erro? o que nao esta fazendo direito?me diz ai q eu te ajudo.Bom cara no outro estava confuso eu ia dizer para fechar mas tive que ir embora do trampo...bom vamus lá vou passa os dois códigos primeiro o do select:<% @Language=VbScript %><% Option Explicit %><!--#include file="bibconexao.asp"--><% RESPONSE.BUFFER = TRUE session.LCID = 1046 Dim banco,tbBanco,tbBanco1,tbBanco2,msg,strsql,bancario,entid,codigox,empresa,wcor,listar,listar2,selectcampo,email,todos1,email1,email2,todos entid=trim(request.QueryString("entid")) codigox=trim(request.QueryString("codigox")) call abre_banco %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Untitled Document</title></head><body> <form action="envia_email.asp" method="post"> <select name="selecione" value="selecione" size="4" multiple> <option>selecione os campos para quem deseje enviar os emails</option> </br> <option selected value="todos">todos </option> <% StrSql="Select email from clientes" StrSql= StrSql & " where email is not null" StrSql= StrSql & " order by email" set tbBanco1=banco.Execute(strSQL) while not tbbanco1.eof %> <option value=<% =tbbanco1("email")%>><% =tbbanco1("email")%></option> <% tbbanco1.movenext wend tbBanco1.Close set tbBanco1=Nothing%> </select> <input name="envia_email" type="submit" id="envia_email" value="Enviar Email"> </form> <p> </p></body></html><%call fecha_banco%>e agora o de enviar:<% @Language=VbScript %><% Option Explicit %><!--#include file="bibconexao.asp"--><% RESPONSE.BUFFER = TRUE session.LCID = 1046' Banco de Dados e Tabelas' Variáveis Webbras Dim banco,tbBanco,tbBanco1,tbBanco2,msg,strsql,bancario Dim entid,codigox,empresa,wcor,listar,listar2,selectcampo,todos1,email1,email2,todos,i,x,j,condicao ' Dim para,assunto,nome,mensagem,email,id_loja,de,nome_loja,strsql,emails,tbbras1,telefone call abre_banco codigox=request.QueryString("codigox") entid=request.QueryString("entid") condicao=trim(request.form("Selecione")) condicao=replace(condicao,"'","´") StrSql= "Select * from clientes" set tbbanco1=banco.execute(strsql) while not tbbanco1.eof if condicao="todos" then StrSql= "Select email from clientes" StrSql= StrSql & " where email is not null" 'response.Write(strsql) 'response.End() Set tbbanco1=banco.execute(strsql) end if if condicao<>"todos" then Strsql= "Select email from clientes " StrSql= StrSql & "where email=" &condicao Set tbbanco1=banco.execute(strsql) end if tbbanco1.movenext wend while not tbbanco1.eof set Email = server.createobject("CDONTS.NewMail") email.From = "felipecabral1451@msn.com" email.To = "felipecabral1451@msn.com" email.Subject = Teste email.Body = "Teste de conteúdo" email.Send set Email = nothing tbbanco1.movenext wend tbBanco1.Close set tbBanco1=Nothing call fecha_banco%>o enviar esta confuso e errado, eu gostaria que o usuario enviasse um texto apenas para os emails que ele selecionou no select, se ele selecionou todos ele enviar email para todos os emails pertinentes a ele no banco, caso ele selecione apenas alguns este texto será enviado para os que ele selecionou, se ficou confuso me diz q eu explicoobrigado Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 Ae lucas valew pela ajuda, bom vamus la, ja está um list menu, com multiple para poder selecionar vários, ja mudei o value da um molhadinha eu editei o código, agora o envia email esta cheio de problemas, naum sei colocar o unbound naum sei fazer o request no value do select acredito que o request fica desta forma: condicao=trim(request.form(tbbanco1("email")) condicao=replace(condicao,"'","´") se eu estiver errado me corrija ai de resto naum sei mais nem o ubound,obrigado mesmo pela atençao Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 bom veiu valewzao te dei mo trabalho desculpa ae, deu esse erro aki oh:Tipo de erro:Erro de compilação do Microsoft VBScript (0x800A0400)Instrução esperada/select/envia_email.asp, line 50end ifnaum entendi pq inesperado, cara mais uma coisinha o unbound e l bound serve pra q se tiver um link de tuto agradeço!!Brigaduam mesmo!! Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 Tipo de erro: Erro de tempo de execução do Microsoft VBScript (0x800A000D) Tipos incompatíveis /select/envia_email.asp, line 14 ta dando incompatibilidade do condicao com o request, e deu tb q era esperado o next mas ja colokei o codigo ta assim: <% @Language=VbScript %><% Option Explicit %><!--#include file="bibconexao.asp"--><% RESPONSE.BUFFER = TRUE session.LCID = 1046' Banco de Dados e Tabelas' Variáveis Webbras Dim banco,tbBanco,tbBanco1,tbBanco2,msg,strsql,bancario Dim entid,codigox,empresa,wcor,listar,listar2,selectcampo,todos1,email1,email2,todos,i,x,j,condicao ' Dim para,assunto,nome,mensagem,email,id_loja,de,nome_loja,strsql,emails,tbbras1,telefone call abre_banco codigox=request.QueryString("codigox") entid=request.QueryString("entid") condicao=trim(request.form(tbbanco1("email"))) condicao=replace(condicao,"'","´") if condicao="todos" then StrSql= "Select email from clientes where email is not null" Set tbbanco1=banco.execute(strsql) while not tbbanco1.eof set Email = server.createobject("CDONTS.NewMail") email.From = tbbanco1("email") email.To = "felipecabral1451@msn.com" email.Subject = "Teste" email.Body = "Teste de conteúdo" email.Send set Email = nothing tbbanco1.movenext wend tbBanco1.Close set tbBanco1=Nothing call fecha_banco end if condicao2= split(condicao,",") for I= lbound(condicao2) to UBound(condicao2) set Email = server.createobject("CDONTS.NewMail") email.From = condicao2(i) email.To = "felipecabral1451@msn.com" email.Subject = "Teste" email.Body = "Teste de conteúdo" email.Send set Email = nothing next %> Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 mas ae essa condiçao é da sua sql... tem q arruma isso..ixi você conseguiu detecta onde ta o erro na sql? Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 ta dando incompatibilidade ainda, eu trokei para <> null no selectemail e no envia e nada...Tipo de erro:Erro de tempo de execução do Microsoft VBScript (0x800A000D)Tipos incompatíveis/select/envia_email.asp, line 14 Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 Ae galera alguem consegue resolver este problema?? Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 mas isso rola sempre, mesmo q você nao selecionar o "todos"???sim mesmo q eu naum selecione o todos, eu acho que pra fazer o condicao=trim(request.form(tbbanco1("email"))) tem q ter um laço neh manu pq são varios emails no select Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 eu realemnte cometi um erro ali mas ja concertei ja colokei condicao=trim(request.form("selecione"))porém ele da um erro q ja deu antes:Tipo de erro:Objeto Server, ASP 0177 (0x800401F3)Seqüência de classe inválida /select/envia_email.asp, line 43pelo servidor ele envia, ja localmente da esse erro, mas mesmo pelo servidor o email não chega Compartilhar este post Link para o post Compartilhar em outros sites
cabral51 0 Denunciar post Postado Julho 4, 2006 galera valewzao, lucas sem comentários valewzão velhu me ajudo demais brigadao mesmo!!consegui quer dizer o lucas conseguiu hUAheae Compartilhar este post Link para o post Compartilhar em outros sites