Avatar billede mhb Nybegynder
14. december 2000 - 10:13 Der er 18 kommentarer og
1 løsning

Jmail, IF not sætning

kan man vedhæfte flere variabler til en
IF not sætning

IF not el=\"navn\" then (denne her dur)
men kan hæfte 3 mere på


Mads
Avatar billede diktator Nybegynder
14. december 2000 - 10:21 #1
Er det noget i den her stil du leder efter?

If Request(\"navn\") = \"\" OR _
        Request(\"navn2\") = \"\" OR _
        Request(\"navn3\") = \"\" \" Then
            msg = \"<B><I>Alle felter skal udfyldes.</I></B><BR>\"
End If
Avatar billede diktator Nybegynder
14. december 2000 - 10:23 #2
Ups...
Request(\"navn3\") = \"\" \" Then  =
Request(\"navn3\") = \"\" Then
Avatar billede mhb Nybegynder
14. december 2000 - 10:27 #3
Ikke umidbart.
Jeg kan godt vedhæfte flere variabler til en if sætning men ikke til en if not sætning
mads
Avatar billede ruprect Nybegynder
14. december 2000 - 10:30 #4
Jeg ville nok pakke mine request\'s ind i en trim() for hvad nu hvis folk bare laver en space i feltet.

Desuden er det god skik at kun at hente sine requests 1 gang.

Så det ser sådan her ud:

strNavn = trim(request(\"navn\"))
strEMail = trim(request(\"email\"))
strSubject = trim(request(\"subject\"))

if strNavn = \"\" or strEMail = \"\" or strSubject = \"\" then
  msg  = \"Udfyld venligst alle felter\"
end if

- Michael
Avatar billede ruprect Nybegynder
14. december 2000 - 10:31 #5
Hvad skal du checke for siden du vil have en if not ??

Du kan jo bare lave en else til din if så.

- Michael
Avatar billede mhb Nybegynder
14. december 2000 - 10:36 #6
Det overordnede problem er ikke at der ikke bliver skrevet i et felt, men at jeg skal have udskrevet en masse felter men i den række følge jeg vil have, hele koden ser sådan ud:
  Set JMail          = Server.CreateObject(\"JMail.SMTPMail\")
  JMail.ServerAddress = \"smtp.andersenit.dk\"
  JMail.Sender        = \"admin@slagteren-i-kaas.dk\"
  JMail.Subject      = \"Information\"
  \'JMail.AddRecipient  \"admin@slagteren-i-kaas.dk\"
  JMail.AddRecipient  \"madshb@get2net.dk\"
  JMail.Priority      = 1
  JMail.AddHeader    \"Originating-IP\", Request.ServerVariables(\"REMOTE_ADDR\")

  \' ********** Her starter selve email-en
JMail.body = \"Fremsendelse af bestilling:\" & vbcrlf & vbcrlf

JMail.Body = JMail.Body & \"navn: \" & Request(\"navn\") & vbcrlf
JMail.Body = JMail.Body & \"Adresse: \" & Request(\"adresse\") & vbcrlf

JMail.Body = JMail.Body & \"Tlf: \" & Request(\"Tlf:\") & vbcrlf
JMail.Body = JMail.Body & \"E-mail: \"& Request(\"E-mail&nbsp;\") & vbcrlf
\'JMail.Body = JMail.Body & \"E-mail: \"& Request(\"tekst\") & vbcrlf


Dim el
\'add every form element and its value to the email
FOR EACH el IN Request.Form
    IF not el=\"navn\" then
        JMail.appendtext( el & \": \" & Request.form(el) & vbcrlf )

        \' JMail.appendtext( Request.form(el) & vbcrlf )
    End If
NEXT
  \' ********** Her slutter selve email-en

  JMail.Execute

Og når jeg kører den kommer alle felter i en stor dynge på nær \"navn\" og email, adresse og tlf skal ikke med i dyngen

Mads
Avatar billede ruprect Nybegynder
14. december 2000 - 10:53 #7
Prøv at paste en email (som du modtager den ind her)
Avatar billede mhb Nybegynder
14. december 2000 - 10:59 #8
Fremsendelse af bestilling:

navn:
Adresse:
Tlf:
E-mail:
Stor ribbensburger:
Madpakke med 3 stk.:
Madpakke med 4 stk.:
Farseret porre:
Adresse:
Grøn salat med tun og rejer:
Grøn salat med roastbeef:
Spaghetti med pølser pr. 100 g.:
Lasagne pr. 100 g:
Tlf: :
Stor frikadelleburger:
Fiskefrikadelle:
E-mail :
Lille frikadelleburger:
Stor rejeburger:
Dagens varme ret:
Biksemad pr. 100 g.:
Pasta med kebab, chili og hvidløg pr 100 g.:
Lille ribbensburger:
Lille roastbeefburger:
Baconrulle:
Stor roastbeefburger:
Lille rejeburger:
Ribbenssteg pr. 100 g.:
Bagels med kalkun og bacon:
Kyllingeburger:
Frikadellemix pr. 100 g.:
Bøf med sauce og løg:
Frikadelle:
Ciabatta med skinke og mozarella:
Sandwich med skinke, tun eller æggesalat:
Baguette med kyllingepølse eller pepperoni:
Avatar billede ruprect Nybegynder
14. december 2000 - 11:02 #9
Så skal du bare tilføje endnu en vbcrlf efter email:

JMail.Body = JMail.Body & \"E-mail: \"& Request(\"E-mail&nbsp;\") & vbcrlf & vbcrlf

Bemærk at der er en &nbsp; i din request.

- Michael
Avatar billede mhb Nybegynder
14. december 2000 - 11:13 #10
Læg venligst mærke til at hvis du kikker ned af listen så dukker email, adresse, tlf: op igen

Mads
Avatar billede ruprect Nybegynder
14. december 2000 - 11:33 #11
Ja det kan jeg sku\'da godt se ..

Så ville jeg gøre noget andet..

På din form side har du nogle felter hvad hedder de?
Avatar billede mhb Nybegynder
14. december 2000 - 11:37 #12
Ja ser du der er fem felter hvor der er navn,adresse,email,tlf og den sidste hedder\"<%=query(\"tekst\")%>\" da det er et udtræk af en db
Avatar billede ruprect Nybegynder
14. december 2000 - 11:41 #13
Ok. Men jeg har brug for at vide hvad form felterne som bestiller varerne hedder.

Det jeg så ville gøre var at kalde det f.eks. varenavn og så ville jeg splitte det til et array så jeg istedet ville loope igennem det istedet for din collection (for each item)
Avatar billede mhb Nybegynder
14. december 2000 - 11:49 #14
Jeg har jo kaldt form feltet \"<%=query(\"tekst\")%>\"
fordi så får jeg både bestillingen og vare teksten skrevet ud og samtidig har jeg en mulighed for via adm modul at opdatere pris og tekst
Avatar billede ruprect Nybegynder
14. december 2000 - 11:56 #15
Ok så du har et form felt der f.eks ser sådan her ud:

<input type=\'text\' name=\'2 Frikadeller\' value=\'\'>
??

- Michael
Avatar billede mhb Nybegynder
14. december 2000 - 12:00 #16
Nej det hedder name=\"<%=query(\"tekst\")%>\"
For ellers er det kun value (antal bestilt) der kommer med mailen, nu kommer teksten (hvad der er bestilt) også med
Avatar billede ruprect Nybegynder
14. december 2000 - 12:01 #17
Det er din kode der ser sådan ud .. Hvordan ser det ud når du henter det ind i en browser ??

jeg har brug for at vide hele <input> .. og ikke name=\"<%=query(\"tekst\")%>\"
det kan en browser ikke forstå.. den bliver jo fortolket af en asp engine.
Avatar billede mhb Nybegynder
14. december 2000 - 12:05 #18
<table>
<tr>
      <td><br><input type=\"text\" name=\"Lille frikadelleburger\" maxlength=\"3\" size=3></td>
      <td>Lille frikadelleburger</td>
      <td>Kr. 15,00</td>


       

       

       
       
   
   
    <table>
<tr>
      <td><br><input type=\"text\" name=\"Stor frikadelleburger\" maxlength=\"3\" size=3></td>
      <td>Stor frikadelleburger</td>
      <td>Kr. 20,00</td>

osv osv
Avatar billede mhb Nybegynder
14. december 2000 - 15:20 #19
Hej Michael

Spildt arbejde !!

Jeg fandt dette her på

http://tech.dimac.net/isapiscript.dll?action=read&id=32490

Så pointene er dine for et godt forsøg

Mads

Automated Forms
  This is a different way to handle forms. Instead of specifyingeach field as in the forms example, we now read all form fields and paste their values into our e-mail.


First, a sample form. Any form will do as long as it posts to our JMail page.
  JmailForm.asp
<html>
<head>
<title>emailform</title>
</head>
<body>
<form method=\"post\" action=\"SendMail.asp\">
    Name <INPUT name=\"name\" type=\"text\"><br>
Email<INPUT name=\"Email\" type=\"text\"><br>
Company<INPUT name=\"company\" type=\"text\"><br>
Occupation <SELECT name=\"state\">
  <OPTION value=\"coder\">Coder
  <OPTION value=\"coder\">Hacker
  <OPTION value=\"coder\">Developer
  <OPTION value=\"coder\">Guru
</SELECT><BR>
Favorite TV-show<TEXTAREA name=\"tv-show\"></TEXTAREA>
<br>
<INPUT type=\"submit\" value=\"Send\">
</form>
</body>
</html>

Now we use the forms collection to get all the fields and add their values to the e-mail. Unfortunately there is no way for us to control the order of the values.
  SendMail.asp

<%@LANGUAGE = VBSCRIPT%> <html>
<body>

<%

\' Create the JMail message Object
set msg = Server.CreateOBject( \"JMail.Message\" )

\' Set logging to true to ease any potential debugging
\' And set silent to true as we wish to handle our errors ourself
msg.Logging = true
msg.silent = true

\' Most mailservers require a valid email address
\' for the sender
msg.From = \"test@mydomain.com\"
msg.FromName = \"My Realname\"

\' Note that as addRecipient is method and not
\' a property, we do not use an equals ( = ) sign
msg.AddRecipient \"recipient@hisDomain.com\", \"His Name\"


\' The subject of the message
msg.Subject = \"How you doin?\"

\'add every form element and its value to the email
FOR EACH el IN Request.Form
    JMail.appendtext( el & \": \" & Request.form(el) & vbcrlf )
NEXT
\' Now send the message, using the indicated mailserver
if not msg.Send(\"mail.myDomain.net\" ) then
    Response.write \"<pre>\" & msg.log & \"</pre>\"
else
    Response.write \"Message sent succesfully!\"
end if


\' And we\'re done! the message has been sent.


%>
</body>
</html>

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