Ir para conteúdo

POWERED BY:

Arquivado

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

Vougan

[Resolvido] Problemas com ASP + Banco de Dados

Recommended Posts

Boa Tarde pessoal do Imasters, beleza?

 

Pessoal, estou com um grande problema em um sistema de cadastro para envio de news.

Preciso ter um campo para inserir o nome e o e-mail das pessoas, mas só consegui fazer com que um dos itens fossem enviados.

 

Segue a baixo o código, se puderem dar uma força ficaria grato.

 


<!--#INCLUDE FILE="includes/bib_conexao2.asp"--> (sistema que chama o banco de dados)
<%

dim conexao
Call abre_conexao
email = Trim(request("email"))
 Set objRs = Server.CreateObject("ADODB.Recordset")
    objRs.CursorLocation = 3
    objRs.CursorType = 0
    objRs.LockType = 3
    objRs.Open "select email from tbEmails WHERE email='" &email & "'" , Conexao

        If objRs.EOF Then
                objRs.AddNew               
				objRs("email") = email	
				objRs.Update
				msg="Email cadastrado!"
        Else			
				msg="Email já existe!"			
        End If
   
	objRs.close
	Set objRs = Nothing
Call fecha_conexao

response.redirect(request.servervariables("HTTP_REFERER") & "?msg=" & msg)
%>

Tentei inserir o campo para o nome de diversas maneiras mas não obtive sucesso em nenhuma delas, dá erro sintax, entre outros.

 

Enquanto isso vou pesquisando aqui no fórum se acho alguma maneira.

 

Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui:

 

objRs.Open "select email from tbEmails WHERE email='" &email & "'"

 

você está selecionando apenas o e-mail cadastrado no bd, você pode fazer assim:

 

objRs.Open "select nome, email from tbEmails WHERE email='" &email & "'"

 

terá o mesmo efeito, pois somente selecionará o nome e email que forem correspondentes ao que recebe do formulario.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui:

 

objRs.Open "select email from tbEmails WHERE email='" &email & "'"

 

você está selecionando apenas o e-mail cadastrado no bd, você pode fazer assim:

 

objRs.Open "select nome, email from tbEmails WHERE email='" &email & "'"

 

terá o mesmo efeito, pois somente selecionará o nome e email que forem correspondentes ao que recebe do formulario.

 

 

Valeu pela atenção Vinicius,

 

eu havia tentado fazer desta maneira antes, mas o problema continuou o mesmo.

 

objRs.Open "select nome, email from tbEmails WHERE email='" &email & "'"

Ele só cadastra o e-mail, mas o nome da pessoa fica em branco no meu DB.

 

Tentei fazer desta maneira, mas tambem não deu certo.

 

<!--#INCLUDE FILE="includes/bib_conexao2.asp"--> (sistema que chama o banco de dados)
<%

dim conexao
Call abre_conexao
nome = trim(request("nome"))
email = Trim(request("email"))
 Set objRs = Server.CreateObject("ADODB.Recordset")
    objRs.CursorLocation = 3
    objRs.CursorType = 0
    objRs.LockType = 3
    objRs.Open "select nome, email from tbEmails WHERE email='" &email & "'" , Conexao

        If objRs.EOF Then
                objRs.AddNew               
                                objRs("email") = email  
                                objRs.Update
                                msg="Email cadastrado!"
        Else                    
                                msg="Email já existe!"                  
        End If
   
        objRs.close
        Set objRs = Nothing
Call fecha_conexao

response.redirect(request.servervariables("HTTP_REFERER") & "?msg=" & msg)
%>

Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tentei inserir o campo para o nome de diversas maneiras mas não obtive sucesso em nenhuma delas, dá erro sintax, entre outros.

qual erro é gerado ??

 

você quer inserir um campo chamado nome no banco de dados, usando a SQL INSERT ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testa assim:

 

 

If objRs.EOF Then

objRs.AddNew

objRs("email") = email

 

objRs("nome") = nome

objRs.Update

msg="Email cadastrado!"

Else

msg="Email já existe!"

End If

 

Não é a forma habitual que faço isso, normalmente uso insert.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia pessoal!!!

 

Era isso Vinicius. Valeu velho, "brigadão" mesmo.

 

Caso alguém tenha um problema parecido, segue o código final para consulta.

 

<!--#INCLUDE FILE="includes/bib_conexao2.asp"-->
<%

dim conexao
Call abre_conexao
nome = Trim(request("nome"))
email = Trim(request("email"))
 Set objRs = Server.CreateObject("ADODB.Recordset")
    objRs.CursorLocation = 3
    objRs.CursorType = 0
    objRs.LockType = 3
    objRs.Open "select nome, email from tbEmails WHERE email='" &email & "'" , Conexao

        If objRs.EOF Then
                objRs.AddNew               
				objRs("email") = email              
				objRs("nome") = nome
					
				objRs.Update
				msg="Email cadastrado!"
        Else			
				msg="Email já existe!"			
        End If
   
	objRs.close
	Set objRs = Nothing
Call fecha_conexao

response.redirect(request.servervariables("HTTP_REFERER") & "?msg=" & msg)
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, resolvido...

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.