Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 14:38 Der er 26 kommentarer og
1 løsning

Problem med Mailformular + handler

Jeg har et problem med min mailformular og den mailhandler denne bruger. Når jeg modtager en mail står der <br> for hvert sted brugeren har lavet en linieskift i den beksed vedkommende har indtastet i textarea feltet. Hvorfor?



DETTE ER INDTASTNINGSFELTET FRA MIN MAILFORMULAR:

<textarea name="body" cols="35" rows="7" id="input"><%= Replace(request.querystring("sBody"),"<br>",vbCrLf) %></textarea>



DETTE ER MAILHANDLER:

<%
Dim sprog, Sendername, Senderemail, Subject, Recipient, Body

Sendername=Request.Form("name")
Senderemail=Request.Form("email")
Subject=Request.Form("subject")
Recipient = "kontakt@vespertine.dk"
Body=Replace(Request.Form("body"), vbCrLf, "<br>")


'Tjekker om der er indhold i formularens felter
IF Sendername = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Senderemail = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Instr(1, Senderemail, "@") = 0 THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Subject = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Body = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Trim(Body) = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF



Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "mail.vespertine.dk"
JMail.Sendername = Sendername
JMail.Sender = Senderemail
JMail.Subject = Subject
JMail.AddRecipient Recipient
JMail.Body = Body
JMail.Priority = 3
JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
JMail.Execute
%>
<html>
Avatar billede medions Nybegynder
05. oktober 2002 - 17:29 #1
<%
Dim sprog, Sendername, Senderemail, Subject, Recipient, Body

Sendername=Request.Form("name")
Senderemail=Request.Form("email")
Subject=Request.Form("subject")
Recipient = "kontakt@vespertine.dk"
Body=Replace(Request.Form("body"), "<br>", vbCrLf)


'Tjekker om der er indhold i formularens felter
IF Sendername = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Senderemail = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Instr(1, Senderemail, "@") = 0 THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Subject = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Body = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF

IF Trim(Body) = "" THEN
    Response.Redirect "mail.asp?sSender=" & Sendername & "&sMail=" & Senderemail & "&sSubject=" & Subject & "&sBody=" & Body & ""
END IF



Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ServerAddress = "mail.vespertine.dk"
JMail.Sendername = Sendername
JMail.Sender = Senderemail
JMail.Subject = Subject
JMail.AddRecipient Recipient
JMail.Body = Body
JMail.Priority = 3
JMail.AddHeader "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
JMail.Execute
%>
<html>

Prøv med dette!

//>Rune
Avatar billede hossein Nybegynder
05. oktober 2002 - 17:29 #2
Body=Replace(Request.Form("body"), vbCrLf, "<br>")
skal ikke være:
Body=Replace(Request.Form("body"), "<br>", vbCrLf)
Avatar billede medions Nybegynder
05. oktober 2002 - 17:30 #3
hossein> LOL 1 sek!

//>Rune
Avatar billede hossein Nybegynder
05. oktober 2002 - 17:32 #4
Sådan kan det går, det er fordi jeg er ryger :))
Avatar billede medions Nybegynder
05. oktober 2002 - 17:34 #5
LOOOL fair nok

//>Rune
Avatar billede hossein Nybegynder
05. oktober 2002 - 17:37 #6
men han kan læse mit svar hurtigere :)))
Avatar billede medions Nybegynder
05. oktober 2002 - 17:42 #7
? hvorfor dog det?

Med mit svar kan han jo bare copy/paste, og desuden handler det jo om hvem der kommer først med det rigtige svar.. Såå...! ;o)

//>Rune
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 17:45 #8
Okay... det virker... bortset fra at der i textarea feltet kommer til at stå: True

?
Avatar billede medions Nybegynder
05. oktober 2002 - 17:47 #9
Hvor siger du der kommer til at stå True?

Prøv at vis mig koden specefikt...

//>Rune
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 17:49 #10
Jeg har brugt Hosseins svar så der nu står
<%= Body=Replace(Request.Form("body"), vbCrLf, "<br>") %>
i selve formaile filen... og Medions svar i mailhandleren..

Men hvor kommer det der TRUE fra? Det står forskrevet i textboxen...
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 17:53 #11
Avatar billede medions Nybegynder
05. oktober 2002 - 17:53 #12
I det heletaget vil dette ikke virke:
<%= Body=Replace(Request.Form("body"), vbCrLf, "<br>") %>

Hvis det skulle virke skulle der stå:
<% Body=Replace(Request.Form("body"), vbCrLf, "<br>") %>

Det True tror jeg kommer fra din QueryString!

Prøv at lav din formular om til at være Method="Post"

og brug Request.Form("feltnavn") i stredet for Request.QueryString("feltnavn") -da det ikke godtager linebreaks så godt!

//>Rune
Avatar billede medions Nybegynder
05. oktober 2002 - 17:54 #13
Jamen hvad er det du prøver på? -hvorfor står der true uden du har gjordt noget?

-Du er jo nødt til at definere en værdi af en art som kan arbejde sammen med databasen...

//>Rune
Avatar billede hossein Nybegynder
05. oktober 2002 - 17:56 #14
Det skal stå sådan i dette afsnit:
<%
Dim sprog, Sendername, Senderemail, Subject, Recipient, Body
Sendername=Request.Form("name")
Senderemail=Request.Form("email")
Subject=Request.Form("subject")
Recipient = "kontakt@vespertine.dk"
Body=Replace(Request.Form("body"), "<br>", vbCrLf)
...
%>
Avatar billede medions Nybegynder
05. oktober 2002 - 17:57 #15
artery_graphics> Prøv lige at giv mig kode for din formular side!

//>Rune
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:00 #16
ROLIG...
Det virker perfekt nu... det var denne

I det heletaget vil dette ikke virke:
<%= Body=Replace(Request.Form("body"), vbCrLf, "<br>") %>

Hvis det skulle virke skulle der stå:
<% Body=Replace(Request.Form("body"), vbCrLf, "<br>") %>

Som Medions skrev. Takker for hjælpen...
Kan I to blive enige om hvem der skal have point?

Og der er ingen database her. Blot et check om alle felter er udfyldt før
OK knappen kan aktiveres og sende mailen afsted fra formularen
Avatar billede hossein Nybegynder
05. oktober 2002 - 18:06 #17
Vi deler! 30 30
Avatar billede medions Nybegynder
05. oktober 2002 - 18:07 #18
hossein> Det kommer sq da an på hvem der har besvaret spørgsmålet!!

//>Rune
Avatar billede medions Nybegynder
05. oktober 2002 - 18:09 #19
artery_graphics> Det er jo op til dig hvem der skal ha' point. Men alt i alt har hossein jo kun reporteret hvad jeg har skrevet.. Så jeg kan ikke rigtig se hvad der er guld værd i hans svar...

//>Rune
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:11 #20
Jeg har brug jeres begges første svar...
+ Medions svar hvor der gøres opmærksom på at der var et = for meget...
Jeg afgører det. I deler og elsker hinanden fremover.
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:12 #21
Men hvis Hossein ikke vil svarer går de til Medions..
Fuck det her pis med de point.
Avatar billede medions Nybegynder
05. oktober 2002 - 18:12 #22
*G* fair nok

//>Rune
Avatar billede hossein Nybegynder
05. oktober 2002 - 18:14 #23
ha ha hvad har jeg reportere jeg var kun 1 sek bagefter, som han selv siger. Jeg elsker alle. derfor 30 30

vh Hossein
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:15 #24
Over and out.. Medions => fandt du ud af hvordan dette egentlig er lavet med denne mailformular og dens handler?
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:19 #25
HOSSEIN => Du kan vinde dit helt eget lotteri her:
http://www.eksperten.dk/spm/265734

Hvis altså ikke Medions lige syntes han skal svarer på det... :)
Avatar billede medions Nybegynder
05. oktober 2002 - 18:25 #26
artery_graphics> LOL nu er du sq provokerende! ;o)

Hvad er det der er galt nu? -altså med koden...

//>RUne
Avatar billede artery_graphics Nybegynder
05. oktober 2002 - 18:29 #27
Der er intet galdt med koden til dette spørgsmål...
Er det det du mener? Det virker perfekt med mailformularen.
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