Avatar billede michael.h Nybegynder
17. marts 2003 - 14:24 Der er 17 kommentarer

Se om der står noget i felterne

Hvad er der galt med denne kode den vil ikke tjekke om der er skrevet noget i MsgBody




<%
' Checks to see if the user inputted a value
' If so, remove leading and trailing blanks and upcase it
name=trim(request.form("name"))
email=trim(request.form("email"))
MsgBody=trim(request.form("MsgBody"))


' Grab the length of the email address inputted
email_len=len(email)

' if the user has inputted a value start checking it
if trim(email) <> "" then

' Loop that will check each character of the inputted value
' for the @ and the dot
for counter = 1 to email_len
'If there is an @ set u_at to the position it was found in
if mid(email,counter,1)="@" then

' count the number of @'s
at_counter=at_counter+1
' if there is more than one add it to the message
if at_counter > 1 then message = message &"There appear to be multiple @'s in the email address<br>" end if

' if this is the 1st @ note the location in the string
if u_at = "" then
u_at=counter
end if ' end check for first @
end if ' end check for the @

'If there is an dot (.) set u_dot to the position it was found in
if mid(email,counter,1)="." then
if u_dot = "" then
u_dot=counter
end if 'end check for the first dot
end if 'end check for the dot

next

' Check to see if the dot comes after the @
' and that the first dot is not the last character
if (u_dot < u_at) or (len(email) <= u_dot+1) or ((u_dot-u_at) < 2) or (u_at < 2)then
message = message & "Email convention appears to be wrong <br>"
end if 'end check for dot after the @

' Scan the user input to see that all inputted values are either a letter A-Z,
' a number 0-9 or if the character is a . or and @.
for counter=1 to len(email)
if (mid(email,counter,1) <> "/") and ((mid(email,counter,1) > chr(45)) and (mid(email,counter,1) < chr(58))) or ((mid(email,counter,1) > chr(63)) and (mid(email,counter,1) < chr(91))) then
' If it's an invalid charcter add it to the display message
response.write "E-mail er ikke rigtig skrevet"
end if 'end check for invalid characters
next 'end loop for invalid characters
end if 'end check for user input

' Check the email field for input if is blank
' then add to the display message
if (email = "") then
response.write "Der er ikke angivet nogen email adresse"
end if

' Check the message field for input if is blank
' then add to the display message
if MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål"
end if

' If the email address is not OK than display the message(s)
' and show the text box for user input with the last value pre-filled
if MsgBody <> "" then

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

' Her sættes afsender navn
Mailer.FromName = name

' Her sættes afsender e-mail adresse
Mailer.FromAddress = email

' Her sættes mail serveren
Mailer.RemoteHost = "Mail server"

' Her sættes modtager navn og e-mail adresse
Mailer.AddRecipient "navn", "etellerandet@domain.dk"

' Her sættes overskriften på mailen
Mailer.Subject = "her skrives et Emne"

' Her sættes selve teksten til mailen
Mailer.BodyText = MsgBody

end if

if Mailer.SendMail then

response.redirect "oksend.asp"

else

response.redirect "fejlsend.asp"

end if
%>
Avatar billede ellebaek Nybegynder
17. marts 2003 - 14:27 #1
if not MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål"
end if
Avatar billede ellebaek Nybegynder
17. marts 2003 - 14:27 #2
Det du gjorde var at spørge om det var <> "" så skrev den at der ikke var skrevet noget...

Du skulle se om den IKKE var forskellig fra tom
...
Avatar billede michael.h Nybegynder
17. marts 2003 - 14:32 #3
Den forstår jeg ikke helt, men hvad skal der så stå istedet for, jeg har prøvet uden <> men det virker heller ikke
Avatar billede ellebaek Nybegynder
17. marts 2003 - 14:34 #4
' Check the message field for input if is blank
' then add to the display message
if MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål"
end if

skal i stedet være:

' Check the message field for input if is blank
' then add to the display message
if not MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål"
end if
Avatar billede michael.h Nybegynder
17. marts 2003 - 14:49 #5
Okay har lige prøvet, men den sender mail alligevel, hvad kan der så være galt
Avatar billede ellebaek Nybegynder
17. marts 2003 - 14:54 #6
2 sek...
Avatar billede ellebaek Nybegynder
17. marts 2003 - 14:57 #7
den sender ved ikke teksten hvis du ikke har skrevet noget i feltet...
Avatar billede michael.h Nybegynder
17. marts 2003 - 15:06 #8
Jo den sender mail'en, men jeg vil gerne have at der kommer en besked op og fortælle at der ikke er skrevet noget uden at den sender mail'en
Avatar billede ellebaek Nybegynder
17. marts 2003 - 15:26 #9
Prøv lige at sætte dette ind i bunden af dit script...
' If the email address is not OK than display the message(s)
' and show the text box for user input with the last value pre-filled
if MsgBody <> "" AND email <> "" then
    Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

    ' Her sættes afsender navn
        Mailer.FromName = name

    ' Her sættes afsender e-mail adresse
        Mailer.FromAddress = email

    ' Her sættes mail serveren
        Mailer.RemoteHost = "Mail server"

    ' Her sættes modtager navn og e-mail adresse
        Mailer.AddRecipient "navn", "etellerandet@domain.dk"

    ' Her sættes overskriften på mailen
        Mailer.Subject = "her skrives et Emne"

    ' Her sættes selve teksten til mailen
        Mailer.BodyText = MsgBody
if Mailer.SendMail then
    response.redirect "oksend.asp"
else
    response.redirect "fejlsend.asp"
end if

else
response.redirect "fejlsend.asp"
end if

%>
i stedet for det der står der i forvejen...
Avatar billede michael.h Nybegynder
17. marts 2003 - 15:27 #10
Okay prøver lige når jeg kommer hjem
Avatar billede michael.h Nybegynder
17. marts 2003 - 17:22 #11
Det virker ikke den sender uden at tjekke på om der står noget i msgbody
Avatar billede ellebaek Nybegynder
17. marts 2003 - 20:31 #12
<%
if request.form("send") <> "" then
' Checks to see if the user inputted a value
' If so, remove leading and trailing blanks and upcase it
name=trim(request.form("name"))
email=trim(request.form("email"))
MsgBody=trim(request.form("MsgBody"))


' Check the email field for input if is blank
' then add to the display message
if (email = "") then
response.write "Der er ikke angivet nogen email adresse<br>"
end if

' Check the message field for input if is blank
' then add to the display message
if not MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål<br>"
end if

' If the email address is not OK than display the message(s)
' and show the text box for user input with the last value pre-filled
if MsgBody <> ""  AND email <> "" then


Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

' Her sættes afsender navn
Mailer.FromName = name

' Her sættes afsender e-mail adresse
Mailer.FromAddress = email

' Her sættes mail serveren
Mailer.RemoteHost = "mail.zix.dk"

' Her sættes modtager navn og e-mail adresse
Mailer.AddRecipient "navn", "jens@mail.zix.dk"

' Her sættes overskriften på mailen
Mailer.Subject = "her skrives et Emne"

' Her sættes selve teksten til mailen
Mailer.BodyText = MsgBody


if Mailer.SendMail then

response.redirect "oksend.asp"

else

response.redirect "fejlsend.asp"
end if
else
response.redirect "fejlsend.asp"
end if

end if
%>

Dette virker glimrende hos mig, dog kan jeg ikke få din email validering til at virke, men mailen bliver ikke sendt hvis afsender mail ikke er skrevet rigtigt...
Avatar billede michael.h Nybegynder
18. marts 2003 - 08:34 #13
Den virker lidt endnu, men den sender mig vidre til fejlsend.asp det skal den bare ikke, jeg vil gerne have at den skal skrive "Der er ikke skrevet noget spørgsmål" eller "Der er ikke angivet nogen email adresse" Kan du hjælpe med det
Avatar billede ellebaek Nybegynder
18. marts 2003 - 22:44 #14
<%
if request.form("send") <> "" then
' Checks to see if the user inputted a value
' If so, remove leading and trailing blanks and upcase it
name=trim(request.form("name"))
email=trim(request.form("email"))
MsgBody=trim(request.form("MsgBody"))


' Check the email field for input if is blank
' then add to the display message
if (email = "") then
response.write "Der er ikke angivet nogen email adresse<br>"
end if

' Check the message field for input if is blank
' then add to the display message
if not MsgBody <> "" then
response.write "Der er ikke skrevet noget spørgsmål<br>"
end if

' If the email address is not OK than display the message(s)
' and show the text box for user input with the last value pre-filled
if MsgBody <> ""  AND email <> "" then


Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

' Her sættes afsender navn
Mailer.FromName = name

' Her sættes afsender e-mail adresse
Mailer.FromAddress = email

' Her sættes mail serveren
Mailer.RemoteHost = "mail.zix.dk"

' Her sættes modtager navn og e-mail adresse
Mailer.AddRecipient "navn", "jens@mail.zix.dk"

' Her sættes overskriften på mailen
Mailer.Subject = "her skrives et Emne"

' Her sættes selve teksten til mailen
Mailer.BodyText = MsgBody


if Mailer.SendMail then

response.redirect "oksend.asp"

else

response.redirect "fejlsend.asp"
end if
end if

end if
%>

Sådan så
Avatar billede ellebaek Nybegynder
25. marts 2003 - 23:02 #15
hvad sagde du til det sidste jeg skrev ??

Virker det ??
Avatar billede ellebaek Nybegynder
08. september 2003 - 16:22 #16
Lukketid...?
Avatar billede ellebaek Nybegynder
16. november 2004 - 18:36 #17
hmm...

Mon der sker mere her ;-/
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