Tja, jag har en såndär "glömt lösenord"grej som buggar lite. Om man skriver in en mail som finns i databasen så är det inga problem, man får mailet skickat till sig men om man skriver en mail som inte finns i databasen så kommer man ändå till sidan där det står att man har fått mail.
Ja? Sidan stoppas ju inte bara för att "Din mail finns inte..." skrivs ut. Du har ju bara IF-satsen runt själva skickningen av mailet.
<html>
<!-- #include virtual="projekt/adovbs.inc" -->
<!-- #include virtual="projekt/cdovbs.inc" -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:/inetpub/wwwroot/projekt/databas.mdb"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Visa = "Select * From Användare WHERE epost= '" & Request.Form("epost") & "'"
RecSet.Open Visa, Connect, adOpenStatic, adLockOptimistic
If Not RecSet.EOF Then
If Lcase(Request.Form("epost")) = Lcase(RecSet("epost")) Then
set msg = Server.CreateOBject( "JMail.Message" )
msg.Logging = true
msg.silent = true
msg.From = "hej@hej.se"
msg.FromName = "Administratörerna på 2004projekt.tk"
msg.AddRecipient Request.Form("epost")
msg.Subject = "Glömt lösenord"
msg.Body = "Lösenord: " & RecSet("pass1")
If not msg.Send("smtp.bredband.net" ) then
Response.write "<pre>" & msg.log & "</pre>"
sMsg = "Du har nu fått ett mail med ditt lösenord"
End If
Else
sMsg = "Din mail finns inte i databasen."
End If
End If
RecSet.Close
Connect.Close
%>
<h2><% =sMsg %></h2>
</html>
Jag skulle även en gång för alla vilja påpeka att det anses som dålig programmerar-etik att döpa strängar till t.ex. 'Visa' som detta uppenbara IDG WebStudio-exemplet illustrerar. Döp dina variablar till vettiga namn istället;
sSQL = "SELECT * FROM Baluba"
251 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9