Avatar billede kaage Nybegynder
24. april 2003 - 14:39 Der er 8 kommentarer

Check om e-mail eksisterer i databasen

Hej,

Jeg skal bruge lidt hjælp til et script som tjekket om den email man prøver at oprettet sig med, allerede eksisterer i databasen.

Det er til en brugerundersøgelse/konkurrence.
Avatar billede soes Nybegynder
24. april 2003 - 14:52 #1
Sql = "SELECT email FROM users WHERE email = '"& [input mailadresse] &"'"

Set Rs = Conn.Execute(Sql)

If Rs.EOF THEN
Response.write("Mail adressen findes ikke!")
Else
Response.write("Mail adressen findes!")End If
Avatar billede kaage Nybegynder
24. april 2003 - 15:00 #2
Det vil sige at min Sql sætning bliver denne :

<%
'Create DB connection
    Set cnnID = Server.CreateObject("ADODB.Connection")
    cnnID.Open Application("DSN")

SQL = "SELECT email FROM poll WHERE email = '"&  =" & Request.Querystring("Email") &"'"
Set Rs = CnnID.Execute(Sql)

If Rs.EOF THEN
'Response.write("Mail adressen findes ikke!")
Response.Redirect "2send.asp"
Else
Response.write("Mail adressen findes!")
End If

%>
Avatar billede medions Nybegynder
24. april 2003 - 15:12 #3
<%
'Create DB connection
    Set cnnID = Server.CreateObject("ADODB.Connection")
    cnnID.Open Application("DSN")

SQL = "SELECT email FROM poll WHERE email = '" & Request.Querystring("Email") & "'"
Set Rs = CnnID.Execute(Sql)

If Not Rs.EOF THEN
Response.Redirect "2send.asp"
Else
Response.write("Mail adressen findes!")
End If
%>

//>Rune
Avatar billede kaage Nybegynder
24. april 2003 - 15:23 #4
Ok, nu har jeg kogt det sammen med min anden sql sætning som skal smide det ned i databasen, hvis email adressen ikke findes... Men det virker ikke helt - kan i se fejlen:

<%
'Create DB connection
    Set cnnID = Server.CreateObject("ADODB.Connection")
    cnnID.Open Application("DSN")

SQL = "SELECT email FROM poll WHERE email = '" & Request.Querystring("Email") & "'"
Set Rs = CnnID.Execute(Sql)

If Rs.EOF THEN
SQL = "Insert into Poll ([YesNo],Software,YesNo1,FindUS,Andet,Evt,Email,MarketingOK) values('" & Request.Form("YesNo") & "','" & Request.Form("Software") & "','" & Request.Form("YesNo1") & "','" & Request.Form("FindUS") & "','" & Request.Form("Andet") & "','" & Request.Form("Evt") & "','" & Request.Form("Email")  & "','" & Request.Form("MarketingOK") & "')"
CnnID.Execute(SQL)
    Response.Redirect "tak.htm"
Else
Response.Write ("Mail adressen findes!")
End If
%>
Avatar billede soes Nybegynder
24. april 2003 - 18:04 #5
er der en fejl meddelse?
Avatar billede hossein Nybegynder
24. april 2003 - 19:45 #6
det var bedre hvis du havde lagt fejl beskeden. men er den nu rigtig:
....
Set Rs = CnnID.Execute(Sql)
.....
If Rs.EOF THEN
....
CnnID.Execute(SQL)
måske fejlen opstår her da den første RS ikke er lukket.
Avatar billede soes Nybegynder
24. april 2003 - 20:14 #7
Det burde ikke have noget med Rs at goere vil jeg mene da det er et helt andet object der bliver brugt. Naar du bruger CnnID.Execute(Sql) er det jo kun forbindelsen til db'en, det har jo ikke noget med recordsettet at goere.

Hvis der er tale om en SQL fejl kunne det godt vaere nogle af dine felter som den er gal med. [YesNo], YesNo1 osv. er boolean felter skal der saa vidt jeg ved ikke ' og ' omkring.
Avatar billede kaage Nybegynder
25. april 2003 - 08:46 #8
Nu har jeg udkommenteret det som tjekker om emailen allerede eksistere:

<%
'Create DB connection
    Set cnnID = Server.CreateObject("ADODB.Connection")
    cnnID.Open Application("DSN")

'SQL = "SELECT email FROM poll WHERE email = '" & Request.Querystring("Email") & "'"
'Set Rs = CnnID.Execute(Sql)
'If Rs.EOF THEN
    SQL = "Insert into Poll (JaNej,Software,JaNej1,FindUS,Andet,Evt,Email,MarketingOK) values('" & Request.Form("JaNej") & "','" & Request.Form("Software") & "','" & Request.Form("JaNej1") & "','" & Request.Form("FindUS") & "','" & Request.Form("Andet") & "','" & Request.Form("Evt") & "','" & Request.Form("Email")  & "','" & Request.Form("MarketingOK") & "')"
    Set Rs = CnnID.Execute(Sql)
    Response.Redirect "tak.htm"
'Else
'    Response.Write ("Mail adressen findes!")
'End If
%>

Så sender den fint - men tjekker jo ikke om email adressen allerede er oprettet i databasen.! Før skrev den bare konsekvent - Email adressen findes!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester