webForumDet fria alternativet

Hur skicka detta?

ASPur ASP

7 svar · 177 visningar · startad av Jesper T

Jesper TMedlem sedan nov. 20017 144 inlägg
#1

Hej!

På min lilla community så skall lösenordet skickas med mail, men inget händer det blir bara vitt utan felkoder, och inget mail skickas, Däremot läggs medlemmen till!

Kommer här (ganska låååång):

<%

username = Request.Form("username")

If InStr(username,chr(34)) <> 0 or InStr(username,chr(39)) <> 0 then
	errorfunction("invalidchars")
end if

If InStr(password,chr(34)) <> 0 or InStr(password,chr(39)) <> 0 then
	errorfunction("invalidchars")
end if
firstname = Request.Form("firstname")
surname = Request.Form("surname")
address = Request.Form("address")
zip = Request.Form("zip")
city = Request.Form("city")
country = Request.Form("country")
phone = Request.Form("phone")
mobil = Request.Form("mobil")
email = Request.Form("email")
medlemsnr = Request.Form("medlemsnr")
sex = Request.Form("sex")
password = Request.Form("password")
passwordconfirm = Request.Form("passwordconfirm")
dob = Request.Form("birth_day") & "/" & Request.Form("birth_month") & "/" & Request.Form("birth_year")
icon = Request.Form("icon")
member = Request.Form("member")
news = Request.Form("news")

badflag = 0
if medlemsnr = "" then
	notfilled(0) = "Distr"
	badflag = 1
end if
if firstname = "" then
	notfilled(1) = "Förnamnet"
	badflag = 1
end if
if surname = "" then
	notfilled(2) = "Efternamnet"
	badflag = 1
end if
if address = "" then
	notfilled(3) = "Gatuadressen"
	badflag = 1
end if
if zip = "" then
	notfilled(4) = "Postnummret"
	badflag = 1
end if
if city = "" then
	notfilled(5) = "Orten"
	badflag = 1
end if
if country = "" then
	notfilled(6) = "Landet"
	badflag = 1
end if
if phone = "" then
	notfilled(7) = "Hemtelefonnummret"
	badflag = 1
end if
if mobil = "" then
	notfilled(8) = "Mobiltelefonnummret"
	badflag = 1
end if
if email = "" then
	notfilled(9) = "E-postadressen"
	badflag = 1
end if
if username = "" then
	notfilled(10) = "Användarnamnet"
	badflag = 1
end if
if password = "" then
	notfilled(11) = "Lösenordet"
	badflag = 1
end if
if sex = "" then
	notfilled(12) = "Könet"
	badflag = 1
end if
if IsDate(dob) = "False" then
	notfilled(13) = "Födelsedatumet"
	badflag = 1
end if
if icon = "" then
	notfilled(14) = "Ditt ikonval"
	badflag = 1
end if

if badflag = 1 then
	signuperror()
end if

passwordLength = Len(password)
if passwordLength < 5 or passwordLength > 12 then
	errorfunction("length")
end if

medlemsnrLength = Len(medlemsnr)
if medlemsnrLength < 10 or medlemsnrLength > 10 then
	errorfunction("distrub")
end if

if password <> passwordconfirm then
	errorfunction("confirm")
end if
%>
<!--#include virtual="/cn.asp"-->
<%

UserUpdate()

Function UserUpdate()
On Error Resume Next

Set rsUser = Server.CreateObject("ADODB.Recordset")
rsUser.open "users", conn, 3, 3
rsUser.AddNew
rsUser("username") = username
rsUser("password") = password
rsUser("firstname") = firstname
rsUser("surname") = surname
rsUser("address") = address
rsUser("zip") = zip
rsUser("city") = city
rsUser("country") = country
rsUser("phone") = phone
rsUser("mobil") = mobil
rsUser("email") = email
rsUser("dob") = dob
rsUser("medlemsnr") = medlemsnr
rsUser("sex") = sex
rsUser("icon") = icon
rsUser("news") = news
rsUser("member") = member
rsUser.Update

if Err.Number = -2147217887 then
	Err.clear
	errorfunction("badusername")
%>
<html>
<head>
</head>
<body>
<p><font>Välkommen och tack <%=firstname%> <%=surname%>, för 
  din anmälan om medlemskap!</font></p>
<p> Ditt användarnamn 
  är: <%=username%><
<p>  
<p>
</body>
</html>

<%
rsUser.close
set rsUser = nothing
cn.close
set cn = nothing

'skicka mail med användaruppgifterna

'Private sub SendMailToAdmin()

	strMailBody = strMailBody & "<html><font face=verdana>"
	strMailBody = strMailBody & "<h3>Kopia på medlemsskap</h3><br>"
	strMailBody = strMailBody & "<pre>" 

	strMailBody = strMailBody & "  <b>Förnamn:</b>         " & Request.Form("firstname") & "<br>"
	strMailBody = strMailBody & "  <b>Efternamn:</b>              " & Request.Form("surname") & "<br>"
	strMailBody = strMailBody & "  <b>Adress:</b>            " & Request.Form("address") & "<br>"
	strMailBody = strMailBody & "  <b>Postnr./Ort:</b>       " & Request.Form("zip") & " " & Request.Form("city") & "<br>"
	strMailBody = strMailBody & "  <b>E-post Adress:</b>     " & Request.Form("country") & "<br>"
	strMailBody = strMailBody & "  <b>Tel.:</b>              " & Request.Form("phone") & "<br><br>"
	strMailBody = strMailBody & "<br>"
	strMailBody = strMailBody & ""
	strMailBody = strMailBody & "<br>"
	strMailBody = strMailBody & Request.Form("password")
	strMailBody = strMailBody & "<br>"
	strMailBody = strMailBody & "</pre>" & chr(10)
	strMailBody = strMailBody & "</font>"
	strMailBody = strMailBody & "</body></html>"
	
	Set objMail = server.CreateObject("mailserver")
	objMail.ContentType = "text/html" 
	
	
	' ## MAILPROG OPSÆTNING
	objMail.ServerAddress = "smtp.i-net.nu"
	objMail.Sender = "info@pipelinenetwork.se"
	objMail.ReplyTo = Request.Form("email")
	objMail.Sendername = "Ansökan om medlemsskap"
	objMail.subject = "Dina användaruppgifter"
	
	
	' ## MODTAGER PÅ EMALEN
	objMail.AddRecipient Request.Form("email")
	objMail.AddRecipientBCC("kalle@kalle.com")
	
	objMail.body = strMailBody
	
	objMail.Priority = 1
	
	' ## SENDER
	objMail.Execute
	
	Set objMail = nothing
%>
<%
end if
End Function%>

<%Function signuperror()%>
<html>
<head>
</head>
<body bgcolor="#FFFFFF">
<font face="arial,helvetica" size=2>

<p><b>Du har inte fyllt i följande fält korrekt:</b></p>

<%for count = 0 to 14%>
	<%if notfilled(count) <> "" then%>
	<b><%=notfilled(count)%></b><br>
	<%end if%>
<%next%>

</font>
</body>
</html>
<%Response.end
End Function%>

<%Function errorfunction(calltype)%>
<html>
<head>
</head>
<body bgcolor="#FFFFFF" link="#DD0000" vlink="#DD0000" alink="#000000">
<font face="arial,helvetica" size=2>

<%if calltype = "confirm" then%>
<p><b>Din lösenords bekräftelse stämmer inte! </b></p>
<p><a href="javascript:self.history.go(-1)">Försök igen!</a></p>

</font>
<%Response.end%>
<%elseif calltype = "length" then%>
<p><b>Ditt lösenord är inte mellan 5 och 12 tecken långt!</b></p>
<p><a href="javascript:self.history.go(-1)">Försök igen!</a></p>
<%Response.end%>
<%elseif calltype = "distrub" then%>
<p><b>Ditt medlemsnummer verkar inte stämma!</b></p>
<p><a href="javascript:self.history.go(-1)">Försök igen!</a></p>
<%Response.end%>
<%elseif calltype = "badusername" then%>
<p><b>Tyvärr, användarnamnet "<%=username%>" andvänds redan.</b></p>
<p><a href="javascript:self.history.go(-1)">Försök igen!</a></p>

<%
rsUser.close
set rsUser = nothing
conn.close
set conn = nothing
Response.end
%>
<%elseif calltype = "invalidchars" then%>
<p><b>Användarnamnet kan inte innehålla några sådana tecken.</b></p>
<p><a href="javascript:self.history.go(-1)">Försök igen!</a></p>

</body>
</html>
<%Response.end%>
<%end if
End Function%>

MVH Jesper

------------------
If ASPackad date-1 then ASPerin Now

[Redigerat av Jesper T den 06 feb 2002]

LarsGMedlem sedan dec. 200012 464 inlägg
#2

En anledning kan ju vara att du aldrig anropar SendMailToAdmin

------------------
essentitia preter non sans multiplicandum

Jesper TMedlem sedan nov. 20017 144 inlägg
#3

Skulle kunna vara det men nu skriver den :
Microsoft VBScript compilation error '800a03ea'

Syntax error

/signupprocess.asp, line 188

Private sub SendMailToAdmin()
^

------------------
If ASPackad date-1 then ASPerin Now

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Glöm mitt förra inlägg, jag såg inte kommentarstecknet.

Ta bor on error resume next så ser du om du får något fel.

Varför är userUpdate en function och inte en sub?

------------------
essentitia preter non sans multiplicandum

Jesper TMedlem sedan nov. 20017 144 inlägg
#5

Ok, satte tillbaka 'tecknet
tog bort on error resume next
Samma symptom återstår

Varför är userUpdate en function och inte en sub?

Ja, ha, det vetekatten, vad är skillnaden?
....Det är på den nivån nu ;)

MVH Jesper

------------------
If ASPackad date-1 then ASPerin Now

LarsGMedlem sedan dec. 200012 464 inlägg
#6

Jag har tittat lite närmare och ser att du har denna

if Err.Number = -2147217887 then
Err.clear
errorfunction("badusername")
%>

och sedan så ligger hela koden för skicka mail inom det if-blocket. Dvs du skickar bara mail om det blir fel.

Om du lägger till en end if direkt efter så borde mailkoden anropas

if Err.Number = -2147217887 then
Err.clear
errorfunction("badusername")
end if
%>

Det finns ett end if längre ned som du måste ta bort.

Set objMail = nothing
%>
<%
end if '<--- tag bort detta
End Function%>

En funktion returnerar ett värde vilket en sub inte gör.

------------------
essentitia preter non sans multiplicandum

Jesper TMedlem sedan nov. 20017 144 inlägg
#7

Ok har lyckats att få detta att funka med mailen, men nu visas inte mina "felmeddelanden", utan "vanliga" när man tex lägger till dubletter osv

MVH Jesper

------------------
If ASPackad date-1 then ASPerin Now

MorphMedlem sedan juli 2000534 inlägg
#8

Sätt tillbaka On Error Resume Next så får du se dina egna felmeddelanden igen.

------------------
/Morph
Ever since I was eight or nine, I've been standing on the shoreline
All my life I've been waiting for something lasting

129 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)