Avatar billede roohullah Nybegynder
26. juni 2006 - 15:40 Der er 3 kommentarer

Afmelding til Mailingliste

Hej, Eksperter!
Jeg har lavet en mailingliste den virker fint, men problemet man kan tilmelde sig mange gang.
Kunne man ikke lave en fejl side.
Så personen ikke tilmelder sig 2 gang.
Avatar billede goose Nybegynder
26. juni 2006 - 16:01 #1
jo da, du kan jo bare checke om e-mail adressen findes i forvejen i databasen


SQL = "select * from DIN_TABEL where E_MAIL='" & request.form("e-mail") &"'"
set rs = conn.execute(SQL)
if rs.eof then

INDSÆT I DATABSEN

else

SEND TIL FEJLSIDE

end if
rs.close
set rs = nothing

/Goose
Avatar billede roohullah Nybegynder
26. juni 2006 - 16:22 #2
Den giver fejl:


Microsoft VBScript compilation error '800a03f6'

Expected 'End'

/aktiver/gem_data.asp, line 92
-----------------------------------------------

<%

SQL = "select * from USR_User where (USR_EmailAddress = '" & Request("email") & "')"
set rs = conn.execute(SQL)
if rs.eof then
if Login("Found") = 1 then
response.redirect("email_error.asp")

UserName = Request.Form("name")
EmailAddress = Request.Form("email")
RandomNumber = generateRandomCharString(14)

'Email related parameters
Set objMail = Server.CreateObject("JMail.Message")
objMail.FromName = "KonkurrenceOnline.dk"
objMail.From = "Aktiver@KonkurrenceOnline.dk"
EmailSubject = "VIGTIG ang. tilmelding"
HTMLEmailBody = "Hej, " & UserName & vbCrLf & vbCrLf & "<br>Velkommen hos KonkurrenceOnline.dk<br>Aktiver din email ved at <a href=""http://www.konkurrenceonline.dk/aktiver/activate.asp?validationcode=" & RandomNumber & """>klikke her!</a>."
EmailServer = "smtp.mail.dk"

'Database related parameters
InsertSQLStr = "INSERT INTO USR_User (USR_UserName, USR_EmailAddress, USR_ValidationCode) VALUES ('" & UserName & "','" & EmailAddress & "','" & RandomNumber & "')"

'Test email, if formed ok, save userinfo and send the email
If isValidEmail(EmailAddress) Then
  'Insert user into database
  Call OpenDataBase(DatabasePathAndName)
  objConn.Execute(InsertSQLStr)
  Call CloseDataBase

  'Send email
  objMail.AddRecipient EmailAddress, UserName
  objMail.Subject = EmailSubject
  objMail.HTMLBody = HTMLEmailBody
  objMail.Logging = True
  objMail.Silent = True
  If objMail.Send(EmailServer) Then
    Response.Write "Tak for tilmeldingen.<br>I løbet af ganske kort tid vil du modtage en E-mail, som du skal bekræfte." & vbCrLf
  Else
    Response.Write "Nogle fejl blev fundet imens du prøvede at sende en email: " & objMail.Log
  End If
End If

Set JMail = nothing
%>
Avatar billede goose Nybegynder
28. juni 2006 - 13:28 #3
Jamen det er jo som fejlen skriver fordi du mangler en "end if".

Som udgangspunkt skal du jo hav en "end if" for hver "if" sætning du starter, så i din kode skal du have yderlig en "end if" mere ind såvidt jeg lige kan se.

<%

SQL = "select * from USR_User where (USR_EmailAddress = '" & Request("email") & "')"
set rs = conn.execute(SQL)
if rs.eof then
if Login("Found") = 1 then
response.redirect("email_error.asp")

UserName = Request.Form("name")
EmailAddress = Request.Form("email")
RandomNumber = generateRandomCharString(14)

'Email related parameters
Set objMail = Server.CreateObject("JMail.Message")
objMail.FromName = "KonkurrenceOnline.dk"
objMail.From = "Aktiver@KonkurrenceOnline.dk"
EmailSubject = "VIGTIG ang. tilmelding"
HTMLEmailBody = "Hej, " & UserName & vbCrLf & vbCrLf & "<br>Velkommen hos KonkurrenceOnline.dk<br>Aktiver din email ved at <a href=""http://www.konkurrenceonline.dk/aktiver/activate.asp?validationcode=" & RandomNumber & """>klikke her!</a>."
EmailServer = "smtp.mail.dk"

'Database related parameters
InsertSQLStr = "INSERT INTO USR_User (USR_UserName, USR_EmailAddress, USR_ValidationCode) VALUES ('" & UserName & "','" & EmailAddress & "','" & RandomNumber & "')"

'Test email, if formed ok, save userinfo and send the email
If isValidEmail(EmailAddress) Then
  'Insert user into database
  Call OpenDataBase(DatabasePathAndName)
  objConn.Execute(InsertSQLStr)
  Call CloseDataBase

  'Send email
  objMail.AddRecipient EmailAddress, UserName
  objMail.Subject = EmailSubject
  objMail.HTMLBody = HTMLEmailBody
  objMail.Logging = True
  objMail.Silent = True
  If objMail.Send(EmailServer) Then
    Response.Write "Tak for tilmeldingen.<br>I løbet af ganske kort tid vil du modtage en E-mail, som du skal bekræfte." & vbCrLf
  Else
    Response.Write "Nogle fejl blev fundet imens du prøvede at sende en email: " & objMail.Log
  End If
End If

Set JMail = nothing
end if
%>

/Goose
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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