Ir para conteúdo
Fórum Script Brasil
  • 0

Exit Do


Guest Carlos Seiji

Pergunta

Guest Carlos Seiji

estou usando o comando "exit do" para sair do "do while", mas tem um problema ele falha algumas vezes teria algum outro comando para sair do comando "do while"?

valeu

[]'s

Link para o comentário
Compartilhar em outros sites

13 respostass a esta questão

Posts Recomendados

  • 0

pois é..

ou tb pode redirecionar o script para outra pagina.. assim, saindo do loop..

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

é q já redireciono para outra pagina. com o meta refresh.

não posso utiliza o response.redirect porque tem que ser depois de 10 seg.

sera que se eu usar o response.end funciona??

valeu pelas dicas anteriores.

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

olá..

Bom.. o response.end vai fazer seu site parar de processar.

então.. dependendo do que você tem abaixo do response.end, nada mais vai ser executado.

você disse que não pode redirecionar, porque usa outro esquema..

deixe-me ver..

porque você gostaria de sair do loop? em que condição, e para fazer o que?

quem sabe exista uma solução melhor..

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

Pois então.

tenho q enviar 10 e-mails por vez e ter uma pausa entre envios de 60 seg.

são 300 e-mails + ou -

e tenho de sair do loop a cada 10 e-mails.

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0

hum..

porque sair do loop a cada 10?

bom.. e se, quando quisesse sair do loop, redirecionasse, passando como parametro a posição que estava quando saiu.. e na proxima pagina pegar o parametro.. e continuar.. não dá?

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

porque o servidor não suporta mais q 10 .da o erro de scripttimeout e não quero alterar o valor do scripttimeout porque posso comprometer o rendimento do servidor.

quanto ao redirecionamento apontando para o registro q parou, já estou fazendo isso.

mas como o "exit do" falha ele não termina a pagina e fica sem acionar o meta refresh.

e fica com status de abrindo a pagina e não sai mais dali.

Link para o comentário
Compartilhar em outros sites

  • 0

como está o codigo do seu loop?

porque você não usa um redirecionamento..? sem ser esse que você esta usando.. pode ser com o response.redirect , ou server.transfer , ou se olhar no tópico de funções, eu postei um modo de redirecionar usando javascript..

todos os modos funcionam..

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

porque preciso de algo parecido com timer.

vou ver as funcoes da qual você falou...

quanto ao edsonet

se tiver solucao eu agradeco piadas estou dispensando.

[]'s

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Carlos Seiji

Esqueci de colocar o script.

vou colocar um simplificado já q o codigo é muito longo.

select * from ml
set rs = conn.Execute(SQL)

do until rs.eof and response.isclientconnected() = true
    Set objCDOSYSMail = Server.CreateObject("CDO.Message")
    Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp2.locaweb.com.br"
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
    objCDOSYSCon.Fields.update
    Set objCDOSYSMail.Configuration = objCDOSYSCon
    objCDOSYSMail.From = "suporte@sanegas.com.br"
    objCDOSYSMail.To = "ml@sanegas.com.br"
    objCDOSYSMail.Subject = email
    objCDOSYSMail.HtmlBody = corpo
    objCDOSYSMail.Send
    Set objCDOSYSMail = Nothing
    Set objCDOSYSCon = Nothing
i = i + 1
if i = 10 then
response.write "<meta http-equiv='Refresh' content='60; url=md_d.asp?id="&id_email&"'>"
exit do
end if
rs.movenext
loop

Link para o comentário
Compartilhar em outros sites

  • 0

olá amigo.

Bom.. pelo que to vendo no seu codigo, você usa o response.write para redirecionar, certo?

Bom..

porque você não usa o Response.Redirect?

veja:

select * from ml

set rs = conn.Execute(SQL)

do until rs.eof and response.isclientconnected() = true

  Set objCDOSYSMail = Server.CreateObject("CDO.Message")

  Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")

  objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp2.locaweb.com.br"

  objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

  objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

  objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

  objCDOSYSCon.Fields.update

  Set objCDOSYSMail.Configuration = objCDOSYSCon

  objCDOSYSMail.From = "suporte@sanegas.com.br"

  objCDOSYSMail.To = "ml@sanegas.com.br"

  objCDOSYSMail.Subject = email

  objCDOSYSMail.HtmlBody = corpo

  objCDOSYSMail.Send

  Set objCDOSYSMail = Nothing

  Set objCDOSYSCon = Nothing

i = i + 1

if i = 10 then

response.redirect "md_d.asp?id="&id_email&""

exit do

end if

rs.movenext

loop

Se der algum erro, pois, o response.redirect só funciona se nada tiver sido escrito na pagina.. Então, você pode usar o server.transfer:

server.transfer "pagina.asp"

ou se tb não der.. pois o server.transfer funciona apenas com o IIS.. você pode usar javascript:

response.write "<script>"

response.write "window.location='pagina.asp'"

response.write "</script>"

veja oque acontece.. qualquer coisa, poste aí

abraços

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...