28. juni 2002 - 08:05Der er
6 kommentarer og 1 løsning
Få tilsendt brugernavn og password
På min loginside forsøger jeg at hitte ud af hvordan jeg kan lave en "har du glemt brugernavn og password" service. Der gerne skulle sende brugernavn eller password til brugeren hvis han enten taster sin email adresse eller brugernavn.
En submit knap submitter det indtastede til en "glemtpwd.asp" Denne side trækker alle oplysninger fra basen ("select * from users where user_id =" & brugernavn)
Derefter sammensætter jeg en mail med de relevante oplysninger fra basen og sender den til brugeren via smtpmail ( et mailobject) .
Set Mailer = Server.CreateObject("SMTPsvg.Mailer") Mailer.FromName = "din side.dk" Mailer.FromAddress= "din email.dk" Mailer.RemoteHost = "mail.domæne.dk" Mailer.AddRecipient "iteax ", Modtager Mailer.Subject = "Dit brugernavn og password" Mailer.BodyText = temp_text if Mailer.SendMail then Response.Write "Meddelelsen er sendt til din email adresse" else Response.Write "Der findes ikke nogen bruger med den email" end if
else %> <br> <br> Fejl... <% end if %>
Eller......
Sendps.asp ( med CDONTS) --- <% set conn = server.createobject("ADODB.connection") path = Server.MapPath("db.mdb") conn.Open "DBQ="& path &";DefaultDir="& path & ";Driver={Microsoft Access Driver (*.mdb)}" SQL = "SELECT * from bruger where email= '" & request.Querystring("modtager") & "'" set RS = Conn.Execute(SQL)
Jeg har et som benytter JMail hvis det er den mai kompunent du har adgang til:
<table border="1"> <form method="post" action="sendpassword.asp" name="sendpassword"> <tr><td colspan="2" align="center">Jeg har glemt mit brugernavn og password, send det til mig.</td></tr> <tr><td>E-mail:</td><td><input name="email"></td></tr> <tr><td colspan="2" align="center"><input type="submit" value="Send" name="Action"></td></tr> </form> </table>
------- og sendpassword.asp filen:
<HTML> <head> <META HTTP-EQUIV=Refresh CONTENT="5; URL=login.asp"> </head> <body> <center> <% if Request.ServerVariables("REQUEST_METHOD") = "POST" then 'Include database filen, den indeholder connection til databasen %> <!--#include file="dsn.asp"--> <% Set rs = Server.CreateObject("ADODB.RecordSet") email = replace(Request.Form("email"),"'","''") strSQL= "SELECT * FROM dp_members WHERE email = '" & email & "';" Set rs = Conn.Execute (strSQL) if not rs.EOF then 'send password til brugeren Set JMail= Server.CreateObject("JMail.SMTPMail") JMail.ServerAddress = "websmtp.DIN_MAIL_SERVER.dk" JMail.Sender = "admin@DIN_SERVER.dk" JMail.SenderName = "Forum Service" JMail.Subject = "Brugernavn og password til forumet" JMail.AddRecipient rs("email") JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR") BodyText = "Du har bedt om at få tilsendt dit brugernan samt password til XXXXX Forum." & vbCrLf BodyText = BodyText & "Dit brugernavn er: " & rs("username") & vbCrLf BodyText = BodyText & "Dit password er: " & rs("userpassword") & vbCrLf BodyText = BodyText & "Hilsen XXXXXX Forum/www.DIN_SERVER.dk" JMail.Body = BodyText JMail.Silent = true JMail.Execute Set JMail = Nothing Response.Write "En mail med dit password er send til dig." else Response.Write "kunne ikke finde bruger oplysninger." end if Conn.Close else Response.Redirect("login.asp") end if %> <br><br> Du vil automatisk bliver stillet om til login siden om 5 sekunder. </center> </body> </HTML>
Jeg forsøgte med scriptet til Jmail. Af en eller anden årsag for jeg hver gang følgende fejl:
Fejltype: Der opstod en Microsoft VBScript-kørselsfejl (0x800A01A8) Et objekt er obligatorisk: '' /sendpassword.asp, line 14
Synes godt om
Ny brugerNybegynder
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.