Avatar billede tgaard Nybegynder
05. juni 2007 - 01:17 Der er 7 kommentarer og
1 løsning

Send brugernavn og password med Jmail

maildatabase.mdb (database-filen)
users (tabelnavn i maildatabase.mdb)
password, username, email (navne i tabellen)

-----------------------------------------------------------------

dsn.asp (filen, der kalder databasen) - kildekode:

et Conn = Server.CreateObject("ADODB.Connection")
DataBase = "Data Source="& server.mappath("maildatabase.mdb") & ";Provider=Microsoft.Jet.OLEDB.4.0;"
Conn.Open (DataBase)

------------------------------------------------------------------

sendpassword.asp ("hovedfilen" - kildekode:

<HTML>
<head>
<META HTTP-EQUIV=Refresh CONTENT="10; URL=index.htm">
</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 users 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 = "smtp.varde.nu"
    JMail.Sender        = "admin@varde.nu"
    JMail.SenderName    = "Tinghøjgård"
    JMail.Subject      = "Brugernavn og password til Tinghøjgård"
    JMail.AddRecipient  rs(email)
    JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
    BodyText = "Du har bedt om at få tilsendt dit brugernavn og password til Mit Forum." & vbCrLf
    BodyText = BodyText & "Dit password er: " & rs("password") & vbCrLf
    BodyText = BodyText & "Dit brugernavn er: " & rs("username")   
    BodyText = BodyText & "Hilsen Tinghøjgård/www.varde.nu"
    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("index.htm")
end if
%>
<br><br>
Du vil automatisk bliver stillet om til login siden om 10 sekunder.
</center>
</body>
</HTML>

-----------------------------------------------------------------

ny_side_1.htm (indtastningsfelt) - kildekode:

<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>

------------------------------------------------------------------

Jeg kan ikke få ovenstående til at virke. Jeg får meddelelsen:

Set Conn = Server.CreateObject("ADODB.Connection") DataBase = "Data Source="& server.mappath("maildatabase.mdb") & ";Provider=Microsoft.Jet.OLEDB.4.0;" Conn.Open (DataBase)
Microsoft VBScript runtime error '800a01a8'

Object required: ''

/sendpassword.asp, line 14

....hvad er der galt?
Avatar billede Slettet bruger
05. juni 2007 - 01:22 #1
prøv at fjerne "<!--#include file="dsn.asp"-->" jeg tror måske du har åbnet databasen 2 gange...

\Dan
Avatar billede morhan Novice
05. juni 2007 - 01:45 #2
Nu ska du huske at koden i din inklude også skal pakkes ind i <% ... %>
Avatar billede tgaard Nybegynder
05. juni 2007 - 08:23 #3
dannielsen:
Dit forslag hjalp ikke. Den fortalte, at siden ikke kunne vises

morhan:
Hvor skal <% ... %> placeres?....prøvede både i dsn.asp og rundt omkring linien <!--#include file="dsn.asp"--> ...det hjalp ikke. Den fortalte, at siden ikke kunne vises
Avatar billede mitbrugernavn Praktikant
05. juni 2007 - 09:18 #4
din dsn.asp
<%
    Database_Location = "maildatabase.mdb"

Set Conn=Server.CreateObject("ADODB.Connection")
Set rs=Server.CreateObject("ADODB.RecordSet")
Set rsa=Server.CreateObject("ADODB.RecordSet")

    Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath(Database_Location)
    Conn.Open
%>
'din forespørgsle side_ny_1.htm

<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>

' mail forsendelse

<body>
  <!--#include file="dsn.asp"-->

<% if Request.ServerVariables("REQUEST_METHOD") = "POST" then

  email = replace(Request.Form("email"),"'","''")
  strSQL= "SELECT * FROM users 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 = "smtp.varde.nu"
    JMail.Sender        = "admin@varde.nu"
    JMail.SenderName    = "Tinghøjgård"
    JMail.Subject      = "Brugernavn og password til Tinghøjgård"
    JMail.AddRecipient  rs(email)
    JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
    BodyText = "Du har bedt om at få tilsendt dit brugernavn og password til Mit Forum." & vbCrLf
    BodyText = BodyText & "Dit password er: " & rs("password") & vbCrLf
    BodyText = BodyText & "Dit brugernavn er: " & rs("username")   
    BodyText = BodyText & "Hilsen Tinghøjgård/www.varde.nu"
    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 "index.htm"
end if
%>
<br><br>
Du vil automatisk bliver stillet om til login siden om 10 sekunder.
Avatar billede tgaard Nybegynder
05. juni 2007 - 10:20 #5
mitbrugernavn:
Hvis jeg på ny_side_1.htm indtaster en forkert mailadresse eller helt lader være med at skrive noget, får jeg følgende besked:

kunne ikke finde bruger oplysninger. Du vil automatisk bliver stillet om til login siden om 10 sekunder.

Og så stiller den om til index-siden, som den skal.

Men hvis jeg taster en rigtig mailadresse ind, får jeg følgende: Siden kan ikke vises
Avatar billede tgaard Nybegynder
05. juni 2007 - 10:38 #6
mitbrugernavn:
Jeg manglede lige "..." om email - så nu ser linien sådan ud:
JMail.AddRecipient  rs("email")

Nu virker det. Men hvordan tvinger jeg et linieskift? I min mail modtager jeg alle oplysningerne i én linie, og det virker "gnidret"
Avatar billede tgaard Nybegynder
05. juni 2007 - 10:55 #7
mitbrugernavn:
Fandt selv ud af det med linieskift. Mange tak for hjælpen
Avatar billede mitbrugernavn Praktikant
05. juni 2007 - 13:56 #8
jeg har lige været fraværende så har ikke set dine spørgsmål - men pyt du fandt jo selv ud af det ;-)) tak for point og ha en god dag
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