Avatar billede Slettet bruger
04. februar 2006 - 22:59 Der er 7 kommentarer og
1 løsning

Ved tilmelding: Aut.tilsendelse af mail med klikbar link for godk

Hejsa.

Jeg leder efter et script, hvor en bruger ved en oprettelse af "Ny bruger" i mit forum, automatisk får tilsendt en mail, hvori brugeren skal klikke på det tilsendte link, for at bekræftige rigtigheden af mail-adressen - og derved automatisk blive oprettet som ny bruger i databasen.

Scriptet skal fungere via ASP og en database (Access eller helst MySQL).

Jeg har JMail, CDonts, og visse andre mail-komponenter til rådighed.

Hvis scriptet findes i en PHP-version, har jeg også stor interesseret i det. :-)
Avatar billede mentoz Nybegynder
05. februar 2006 - 06:19 #1
Okay jeg prøver lige, bær over med mig jeg er lidt træt så kan godt være jeg laver måske nogle fejl, jeg gider dog ikke at lave det hele men bare "prøve" at forklare det som jeg har lavet det en gang for længe siden

Først oprettede jeg under databasen hvor brugeren ligger en række der hed "aktiv", og den kunne enten være ja eller nej, self. nej når brugeren havde oprettet sig, og så når de klikkede på linket ville den blive ja, derefter sendte jeg brugeren videre efter de oprettede sig i databasen, til en side der hed send.asp, og til den side tog jeg følgene Form Variabler med ID, brugernavn og Email (Husk kun at sende videre hvis brugeren er oprettet i databasen ellers går det galt), og send.asp ser sådan her ud:

<%
' alle form Variabler er self. omskrevet til normale Variabler under Tekst formatering af Qoute tegnet
' som følgende strID, strEmail og strBruger

strBesked = "http://www.ditdomæne.dk/opretbruger_tjek.asp?brugernavn=" & strBRuger & "&id=" & strEmail & "&urte=etellerandet"

name        = "navn"
senderEmail = "navn@ditdomæne.dk"
subject    = "emne"
recipient  = strEmail
body        = strBesked

' Create the JMail message Object
set msg = Server.CreateOBject( "JMail.Message" )

' Set logging to true to ease any potential debugging
' And set silent to true as we wish to handle our errors ourself
msg.Logging = true
msg.silent = true

' Enter the sender data
msg.From = senderEmail
msg.FromName = name

' Note that as addRecipient is method and not
' a property, we do not use an equals ( = ) sign
msg.AddRecipient recipient

' The subject of the message
msg.Subject = subject

' And the body
msg.body = body

' Now send the message, using the indicated mailserver
if not msg.Send("sv_web2techdk:hktxfjgk@nt2001.webhosting.dk") then
    strBesked = "der er opstået en fejl, du har nok intastet en ugyldig E-mail"
   
    SQL = "Delete from users where Nick = '" & request.queryString("user") & "'"
    Set RS = objConn.Execute(SQL)
else
    strBesked = "Tekst hvis den er sendt korrekt"
end if


' And we're done! the message has been sent.

rs.Close
Set rs = Nothing

Response.Write strBesked

%>

når brugeren så klikker på linket fra sin Email ogryger ind på siden opretbruger_tjek.asp så tjekker den fil om alle krav er indgået, et eksempel igen

<%
SQL = "Select * from table where id = '" & request.queryString("id") & "' AND brugernavn = '" & request.queryString("brugernavn") & "'"
Set RS = objConn.Execute(SQL)

if rs.EOF or rs.BOF Then
' ja så sker intet, evt redirect tilbage til forsiden
else
if request.queryString("urte") = "etellerandet" Then
' så skal vi sætte aktiv til ja, hvor id = request.queryString("id")
else
' intet igen, evt redirect tilbage til forsiden
end if
end if
%>

derudover skal man også tjekke om "aktiv" er ja når der logges på, det var sådan jeg lavede det den gang jeg lavede det, ved ikke om der er en smartere metode, men det fungerede fint ved mig :), tjek lige koderne får fejl, da jeg lige har skrevet dem ind og ikke testet det
Avatar billede Slettet bruger
27. februar 2006 - 21:52 #2
mentoz:
Sorry, men jeg har totalt overset, at jeg ikke har fået tildelt dig points for dit super-gode svar! Det er selvfølgelig ikke personligt ment.
Men læg venligst et svar, og jeg tildeler dig points for din perfekte løsning! :-)
Avatar billede mentoz Nybegynder
02. marts 2006 - 09:34 #3
okay :)
Avatar billede Slettet bruger
02. marts 2006 - 15:00 #4
mentoz:
Altså! :-) Du glemte igen at lægge et svar. :-)
Avatar billede mentoz Nybegynder
02. marts 2006 - 15:01 #5
dooou :)
Avatar billede Slettet bruger
02. marts 2006 - 22:01 #6
mentoz:
Godt, så er det nemlig på plads. :-) Din løsning virker nemlig perfekt, mentoz. :-)
Desuden skulle jeg jo gerne kunne spørge dig (eller andre herindefra) en anden gang, hvis der er noget jeg ønsker at få svar på. ;-)

Forresten:
Du nævner rækken "aktiv" i databasen, som stilles på "ja", når brugeren har klikket på linket, og dermed aktiveret sig selv. Font nok, og det virker også i Access. :-)
Men er det Access eller MySQL som du bruger? For jeg har nemlig lidt problemet med at få det til at virke, når jeg prøver med MySQL... :-(
Avatar billede mentoz Nybegynder
03. marts 2006 - 05:34 #7
jeg bruger MySql så det virker fint til MySql, sikker på at du har sat dem alle til de rigtige funktioner så som, varchar, int, longtext osv?
Avatar billede mentoz Nybegynder
03. marts 2006 - 05:34 #8
du kan lige smide den fejlkode du får, hvis du får en, eller hvad der præcist er galt
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