Avatar billede aero Nybegynder
03. august 2003 - 17:23 Der er 23 kommentarer og
2 løsninger

JMAIL problem Siden kan ikke vises

jeg har denne side:
http://www.vejlesmorrebrod.dk/main/jmail/JmailForm.asp


nå jeg klikker send/submit så kommer der en fejl !!  hvad er fejlen på denne side som er den der skal sende det:

<%

Const cnstMCSenderEMail = " aero@delvis.dk" 
Const cnstMCSenderName  = "Vejle Smørrebrød"
Const cnstMCSubject    = "Forspørgsel Til VS"
Const cnstSMTPServer    = "mail.XXXXXXXXXX.dk"


navn        = Request.Form("name")
senderEmail = Request.Form("email")
telefon        = Request.Form("phone")
faxen        = Request.Form("fax")
tid        = Request.Form("time")
forspørgsel = Request.Form("fspg")
body        = Request.Form("body")


Sub SendMail(strEMail, strHTMLBody)
    Dim objjMail
    Dim dido
   
    Set objjMail = Server.CreateObject("JMail.Message")
    objjMail.From = cnstMCSenderEMail
    objjMail.FromName = cnstMCSenderName
    objjMail.AddRecipient strEMail
    objjMail.Subject = cnstMCSubject
    objjMail.HTMLBody = strHTMLBody
    dido = objMail.Send(cnstSMTPServer)
    Set objjMail = Nothing
End Sub

Sub ConfirmMail(strTargetEMail, strConfirmField)
    Dim strHTMLBody
    Dim objItem
    Dim strConfirmMail
   
    strHTMLBody = ""
    strHTMLBody = strHTMLBody & "<h2><b>Der er blevet udfyldt flg.</b></h2>" & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Navn :" & navn & vbCrLf
    strHTMLBody = strHTMLBody & "Mail :" & senderEmail & vbCrLf
    strHTMLBody = strHTMLBody & "Telefon nr. :" & telefon & vbCrLf
    strHTMLBody = strHTMLBody & "Fax nr. :" & faxen & vbCrLf
    strHTMLBody = strHTMLBody & "Bedste Træffe tid :" & tid & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Forspørgsel på :" & forspørgsel & vbCrLf
    strHTMLBody = strHTMLBody & "Beskrivelse :" & vbCrLf
    strHTMLBody = strHTMLBody & body & vbCrLf
        Call SendMail(strTargetEMail, strHTMLBody)
    strConfirmMail = Request.Form(strConfirmField)
    If strConfirmMail <> "" Then
        strHTMLBody = ""
        strHTMLBody = strHTMLBody & "Vi takker for din forspørgsel." & vbCrLf
        strHTMLBody = strHTMLBody & vbCrLf
        strHTMLBody = strHTMLBody & "Venlig hilsen" & vbCrLf
        strHTMLBody = strHTMLBody & "VejleSmørrebrød.dk" & vbCrLf
        Call SendMail(strConfirmMail, strHTMLBody)
    End If
End Sub

%>
Avatar billede tuctoh Nybegynder
03. august 2003 - 17:25 #1
du har en variabel ved navn "forespørgsel".
Du må ikke bruge ø i variablers navne
Avatar billede keysersoze Ekspert
03. august 2003 - 17:26 #2
Microsoft VBScript compilation error '800a0408'

Invalid character

/main/jmail/mailconfirm.asp, line 19

forspørgsel = Request.Form("fspg")
-----^


du kan ikke benytte æ ø å i asp-variabler
Avatar billede keysersoze Ekspert
03. august 2003 - 17:26 #3
du kan selv se det hvis du ændrer denne indstilling;

funktioner -> indstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"
Avatar billede koldstar Nybegynder
03. august 2003 - 17:28 #4
du må ikke bruge æ,ø og å
Avatar billede koldstar Nybegynder
03. august 2003 - 17:28 #5
ups... for langsom.
Avatar billede aero Nybegynder
03. august 2003 - 17:39 #6
nej stadigvæk fejl !!!
Avatar billede tuctoh Nybegynder
03. august 2003 - 17:40 #7
dido = objMail.Send(cnstSMTPServer)

skulle være:

dido = objjMail.Send(cnstSMTPServer)
Avatar billede aero Nybegynder
03. august 2003 - 17:47 #8
hold da kæft du er sej tuctoh nu virker det jo !!!
Avatar billede tuctoh Nybegynder
03. august 2003 - 17:50 #9
det var så lidt aero :)

Men som keyser sagde:
funktioner -> indstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"
SKAl til når du programmerer.... på den måde ville du selv nemt kunne rette problemet.
Avatar billede aero Nybegynder
03. august 2003 - 17:52 #10
okay takker igen !!!

men lige en lille ting

dette stykke:

strConfirmMail = Request.Form(strConfirmField)
    If strConfirmMail <> "" Then
        strHTMLBody = ""
        strHTMLBody = strHTMLBody & "Vi takker for din forspørgsel." & vbCrLf
        strHTMLBody = strHTMLBody & vbCrLf
        strHTMLBody = strHTMLBody & "Venlig hilsen" & vbCrLf
        strHTMLBody = strHTMLBody & "VejleSmørrebrød.dk" & vbCrLf
        Call SendMail(strConfirmMail, strHTMLBody)
    End If


er det muligt at lave dette så den kun sender dette hvis mail feltet er udfyldt og ellers sender den kun det første til min mail !????
Avatar billede tuctoh Nybegynder
03. august 2003 - 17:57 #11
måske:

if len(trim(Request.Form("email"))) > 0 then
        strHTMLBody = ""
        strHTMLBody = strHTMLBody & "Vi takker for din forspørgsel." & vbCrLf
        strHTMLBody = strHTMLBody & vbCrLf
        strHTMLBody = strHTMLBody & "Venlig hilsen" & vbCrLf
        strHTMLBody = strHTMLBody & "VejleSmørrebrød.dk" & vbCrLf
        Call SendMail(strConfirmMail, strHTMLBody)
end if

i stedet for den kode du kopierede
Avatar billede aero Nybegynder
03. august 2003 - 21:31 #12
TUCTOH eller andre jeg er villig til at oprettet et spm så du kan få lidt P men vil du ikke lige få dette til at virke:

<%
Const cnstMCSenderEMail = "aero@delvis.dk"
Const cnstMCSenderName  = "Vejle Smørrebrød"
Const cnstMCSubject    = "Forspørgsel Til VS"
Const cnstSMTPServer    = "mail.vejlesmorrebrod.dk"


navn        = Request.Form("name")
senderEmail = Request.Form("email")
telefon        = Request.Form("phone")
faxen        = Request.Form("fax")
tid        = Request.Form("time")
forsporgsel = Request.Form("fspg")
body        = Request.Form("body")


Sub SendMail(strEMail, strHTMLBody)
    Dim objjMail
    Dim dido
   
    Set objjMail = Server.CreateObject("JMail.Message")
    objjMail.From = cnstMCSenderEMail
    objjMail.FromName = cnstMCSenderName
    objjMail.AddRecipient strEMail
    objjMail.Subject = cnstMCSubject
    objjMail.HTMLBody = strHTMLBody
    dido = objjMail.Send(cnstSMTPServer)
    Set objjMail = Nothing
End Sub

Sub ConfirmMail(strTargetEMail, strConfirmField)
    Dim strHTMLBody
    Dim objItem
    Dim strConfirmMail
   
    strHTMLBody = ""
    strHTMLBody = strHTMLBody & "<h2><b>Der er blevet udfyldt flg.</b></h2>" & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Navn :" & navn & vbCrLf
    strHTMLBody = strHTMLBody & "Mail :" & senderEmail & vbCrLf
    strHTMLBody = strHTMLBody & "Telefon nr. :" & telefon & vbCrLf
    strHTMLBody = strHTMLBody & "Fax nr. :" & faxen & vbCrLf
    strHTMLBody = strHTMLBody & "Bedste Træffe tid :" & tid & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Forspørgsel på :" & forsporgsel & vbCrLf
    strHTMLBody = strHTMLBody & "Beskrivelse :" & vbCrLf
    strHTMLBody = strHTMLBody & body & vbCrLf
        Call SendMail(strTargetEMail, strHTMLBody)
    strConfirmMail = Request.Form(strConfirmField)
    if len(trim(Request.Form("email"))) > 0 then
        strHTMLBody = ""
        strHTMLBody = strHTMLBody & "Vi takker for din forspørgsel." & vbCrLf
        strHTMLBody = strHTMLBody & vbCrLf
        strHTMLBody = strHTMLBody & "Venlig hilsen" & vbCrLf
        strHTMLBody = strHTMLBody & "VejleSmørrebrød.dk" & vbCrLf
        Call SendMail(strConfirmMail, strHTMLBody)
end if
End Sub

%>

det skal være sådan at hvis MAIL ikke er udfyldt så sender den kun en mail til mig og ikke til brugeren.

jeg har sat den code op her http://www.vejlesmorrebrod.dk/main/jmail/JmailForm.asp
vil du evt kigge på det pleas !!!
Avatar billede tuctoh Nybegynder
03. august 2003 - 22:00 #13
der må være noget af koden du udelader i ovenstående... jeg kan ikke se at de forskellige subs overhovedet bliver kaldt :s som jeg ser det burde den ikke sende nogen mails.

Prøv at sende HELE koden her til :s
Avatar billede aero Nybegynder
03. august 2003 - 22:09 #14
de bliver kaldt på en anden side !!!!

du kan jo prøve at udfylde formen den virker hvis man indtaster mail så intet problem, men hvis man så ikke udfylder mail så skriver den OK og en fejl oveni og det virker ikke og jeg vil gerne have at man skal kunne bruge det uden at man behøves at udfylde mail bare jeg får alle mails og brugeren så kan udfylde mail hvis denne vil modtage en bekræftelse !!!
Avatar billede tuctoh Nybegynder
03. august 2003 - 22:26 #15
et eller andet sted på den side som kalder de forskellige subs, kalder du med den med senderEmail. Denne skal ikke kaldes hvis len(trim(senderEmail)) = 0
Avatar billede aero Nybegynder
03. august 2003 - 22:27 #16
<!-- #include file="mailconfirm.asp" -->
<html>
<body>
<br>
Vi takker for din Forspørgsel.<br>
<br>
<%

  Call ConfirmMail(Request.Form("email"), "email")

%>
</body>
</html>
Avatar billede tuctoh Nybegynder
03. august 2003 - 22:28 #17
if len(trim(senderEmail)) > 0 then  Call ConfirmMail(Request.Form("email"), "email")
Avatar billede aero Nybegynder
03. august 2003 - 22:29 #18
okay men sender den så kun til mig hvis det første er aktuelt !??
Avatar billede tuctoh Nybegynder
03. august 2003 - 22:34 #19
glem den ændring jeg lige lavede, og brug dette:

så burde det virke.


<%
Const cnstMCSenderEMail = "aero@delvis.dk"
Const cnstMCSenderName  = "Vejle Smørrebrød"
Const cnstMCSubject    = "Forspørgsel Til VS"
Const cnstSMTPServer    = "mail.vejlesmorrebrod.dk"


navn        = Request.Form("name")
senderEmail = Request.Form("email")
telefon        = Request.Form("phone")
faxen        = Request.Form("fax")
tid        = Request.Form("time")
forsporgsel = Request.Form("fspg")
body        = Request.Form("body")


Sub SendMail(strEMail, strHTMLBody)
    Dim objjMail
    Dim dido
   
    Set objjMail = Server.CreateObject("JMail.Message")
    objjMail.From = cnstMCSenderEMail
    objjMail.FromName = cnstMCSenderName
    objjMail.AddRecipient strEMail
    objjMail.Subject = cnstMCSubject
    objjMail.HTMLBody = strHTMLBody
    dido = objjMail.Send(cnstSMTPServer)
    Set objjMail = Nothing
End Sub

Sub ConfirmMail(strTargetEMail, strConfirmField)
    Dim strHTMLBody
    Dim objItem
    Dim strConfirmMail
   
    strHTMLBody = ""
    strHTMLBody = strHTMLBody & "<h2><b>Der er blevet udfyldt flg.</b></h2>" & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Navn :" & navn & vbCrLf
    strHTMLBody = strHTMLBody & "Mail :" & senderEmail & vbCrLf
    strHTMLBody = strHTMLBody & "Telefon nr. :" & telefon & vbCrLf
    strHTMLBody = strHTMLBody & "Fax nr. :" & faxen & vbCrLf
    strHTMLBody = strHTMLBody & "Bedste Træffe tid :" & tid & vbCrLf
    strHTMLBody = strHTMLBody & vbCrLf
    strHTMLBody = strHTMLBody & "Forspørgsel på :" & forsporgsel & vbCrLf
    strHTMLBody = strHTMLBody & "Beskrivelse :" & vbCrLf
    strHTMLBody = strHTMLBody & body & vbCrLf
        Call SendMail("aero@delvis.dk", strHTMLBody)
if len(trim(senderEmail)) > 0 then
        strHTMLBody = ""
        strHTMLBody = strHTMLBody & "Vi takker for din forspørgsel." & vbCrLf
        strHTMLBody = strHTMLBody & vbCrLf
        strHTMLBody = strHTMLBody & "Venlig hilsen" & vbCrLf
        strHTMLBody = strHTMLBody & "VejleSmørrebrød.dk" & vbCrLf
        Call SendMail(senderEmail, strHTMLBody)
end if
End Sub

%>
Avatar billede aero Nybegynder
03. august 2003 - 22:50 #20
Du er en kammerat har lige noget jeg vil have lavet og dette giver jeg dig 100 P for håber du vil hjælpe !!!!

kan du lave en side som jeg kan gå til når jeg klikker submit som tjekker om der er nogle felter som ikke er udfyldt MINUS mail og hvis der er nogle vil den skrive hvilke og sige gå tilbage og ret dem.

felterne er:

Request.Form("name")
Request.Form("phone") XX-XXXXXX
Request.Form("fax")  XX-XXXXXX
Request.Form("fspg")
Request.Form("body")


Request.Form("time")
Request.Form("email")
skal den ikke tjekke på !!!


Og hvis de er udfyldt så vil den automatisk gå videre til sendmail.asp
Avatar billede aero Nybegynder
03. august 2003 - 22:50 #21
opretter lige et ref til denne side på 100 P !!!
Avatar billede tuctoh Nybegynder
03. august 2003 - 22:52 #22
if Request.Form("name") = "" OR Request.Form("phone") = "" OR Request.Form("fax") = "" or Request.Form("fspg") = "" OR Request.Form("body") = "" then
response.write("Du udfyldte ikke alle felterne!")
else
Call ConfirmMail(Request.Form("email"), "email")
end if


smid dette i filen i stedet for bare
Call ConfirmMail(Request.Form("email"), "email")
Avatar billede aero Nybegynder
03. august 2003 - 22:55 #23
kan man ikek lave den mere udviklet å den præcist siger at eks.

Du har ikke udfyldt flg. felter korrekt:

Telefon nr.
Forspørgsel

!??
Avatar billede kenp Novice
03. august 2003 - 23:12 #24
Den er her! men hvem som skal have point kan ikke ses!
http://www.eksperten.dk/spm/383294
Avatar billede aero Nybegynder
03. august 2003 - 23:31 #25
det er bare for at ref. hertil og den der så vil lave det jeg efterspørger fra
Kommentar: aero
03/08-2003 22:50:22

og ned efter får de 100 P !!!
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