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

Newsletter


[ GuTo ]

Pergunta

Fala Galera!!!

Eu fiz uma newsletter P E R F E I T A pelo q eu vejo (a principio só a página para adicionar e remover e-mails, página comum, normal, não fiz a parte de administração ainda...).

E tá ocorrendo um erro aki, dizendo isso:

ADODB.Recordset error '800a0e78'

Operação não permitida quando o objeto está fechado

if Request.Form("acao")="del" then
  Set rs = db.Execute("DELETE FROM newsletter WHERE id_membro="&id_logado&" ")
    if not rs.eof then

a linha do erro seria aí no If not rs.ef then <_<

Se alguém achar q o erro está em outro ponto da página, eu coloco todo o código fonte aki.

Conto com a ajuda de vocês! ;) :D

Interessados em dar um look, acessem: newsletter.asp

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Reginaldo, entendi sim!

pgmador, olhe:

<%
Option Explicit
dim db, rs, sql
dim i, cor
dim id_logado, email

id_logado = session("id")
email = request.Form("email")

set db = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

db.open "Provider=Microsoft.Jet.OLEDB.4.0;data source="& Server.MapPath("db\geral.mdb")
%><html>
<head>
<title>Newsletter</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="styles.css" rel=stylesheet type=text/css>
<link href="favicon.ico" rel="shortcut icon">
<script language="JavaScript">
<!-- Este script e muito mais você encontra GRÁTIS em -->
<!-- Super JavaScripts - http://www.superjavascripts.kit.net -->

<!--
function checkFields() { 
  if (document.form.email.value == "") {
    alert("Digite seu e-mail");
    form.email.focus();
    return false;
  }
    if (document.form.email.value.indexOf("@", 0) == -1 || document.form.email.value.indexOf(".", 0) == -1 || document.form.email.value.length <= 10) {
    alert("Digite um e-mail válido");
    form.email.focus();
    return false;
  }
}
// -->
</script>
</head>

<body><%
' membro logado, funcoes a serem executadas
  if session("logado") = 1 then
  if Request.Form("acao")="del" then
      Set rs = db.Execute("DELETE FROM newsletter WHERE id_membro="&id_logado&" ")
    if not rs.eof then
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Olá Membro!<br><br>Seu email foi removido com sucesso.</p>")
        Response.end
        End With
    else
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Prezado(a) Membro,<br><br>Seu email ainda não está cadastrado em nossa newsletter.<br>")
       .Write("Verifique se você digitou seu email corretamente!</p>")
        Response.end
        End With
    end if
  elseif Request.Form("acao") ="add" then
      Set rs = db.Execute("INSERT INTO newsletter (id_membro,email) VALUES ("&id_logado&",'"&email&"') ")
    With Response
      .Write("")
      .Write("")
      .Write("<p align=center>Parabéns!<br><br>Você é mais um membro a receber notícias quentinhas de nosso site.")
       Response.end
    End With
  end if
' visitante, funcoes a serem executadas
  else
  if Request.Form("acao")="del" then
      Set rs = db.Execute("DELETE FROM newsletter WHERE email='"&email&"' ")
    if not rs.eof then
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Olá Visitante,<br>Seu Email foi removido com sucesso.</p>")
       Response.end
        End With
    else
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Prezado(a) Visitante,<br><br>Seu email ainda não está cadastrado em nossa newsletter.<br>")
       .Write("Verifique se você digitou seu email corretamente!</p>")
       Response.end
        End With
    end if      
  elseif Request.Form("acao") ="add" then
      Set rs = db.Execute("INSERT INTO newsletter (id_membro,email) VALUES (0,'"&email&"') ")
    if not rs.eof then
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Olá Visitante,<br>Seu Email foi cadastrado com sucesso.<br>")
       .Write("Em breve você receberá notícias quentinhas de nosso site.</p>")
       Response.end
        End With
    else
        With Response
       .Write("")
       .Write("")
       .Write("<p align=center>Prezado(a),<br>Este Email já está cadastrado em nosso site.</p>")
       Response.end
        End With
    end if
  end if
  end if
%>

<table align="center" cellspacing="2" cellpadding="2" border="0">
  <tr bgcolor="#E4E4E4">
    <td align="center" class="titulo" colspan="4">Newsletter</td>
  </tr>
    <form action="newsletter.asp" method="post" name="form" onsubmit="return checkFields()">
  <tr class="bg1">
    <td align="center"><input type="text" name="email" size="30"></td>
  </tr>
  <tr class="bg1">
    <td align="center"><input type="radio" name="acao" value="add"> Add    <input type="radio" name="acao" value="del"> Del <input class="botao" type="submit" value="ok"></td>
  </tr>
    </form>
</table>
<% 
db.close
Set db = Nothing
Set rs = Nothing
%>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Pois é pgmador, eu já tentei isso e não deu.

Não sei porque isso...

Me ajudeeee!

Link para o comentário
Compartilhar em outros sites

  • 0

Sim! :unsure:

Ao q parece tudo está OK.

Testei no brinkster, e aki em casa.

Ocorre o mesmo erro em ambos.

Se quiseres te consigo a o BD e a página esta... bem, o código dela está ae...

Obrigado pela atenção q vem tendo...

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Ae Reginaldo ASP

Como você tinha dito em primeira mão, está corretíssimo.

E assim..arrumei uma boa explicação pra isso.

O delet, insert e o update não geram recordset, então não adianta testar, pois ele não está aberto.

Valeu!!!

Confiram a página FUNFANDO ae: http://www27.brinkster.com/chatcanoas/newsletter.asp

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...