Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:18 Der er 27 kommentarer og
1 løsning

Mail form HASTER!!

Jeg er igang med at lave en hjemmeside hvor der skal være en mail form, som skal være lavet i ASP - Jmail!

Formen skal indeholde:
Navn
Adresse
Postnr
By
Email adresse
emne (select boks)
besked (tekstfelt)

Disse ting skal kunne udfyldes og sendes til en fast emailadresse.
Der gives point til den der kan lave hele koden, så det virker!
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:18 #1
Jeg vil gerne have koden til dig
Giv mig 15 min...
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:19 #2
kimlarsen1978 >> Hvis du mener lave, så lyder det rigtig godt!
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:21 #3
Ja selvfølge - sorry
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:21 #4
kimlarsen1978 >> Hvis du har icq kan du få lov til at se siden den skal være på, så du kan tilpasse den:

Mit uin: #127563097
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:25 #5
Skal "emne" være i dropdown?
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:26 #6
ja tak, der skal være to valg muligheder
Avatar billede mm12010 Nybegynder
14. maj 2003 - 14:27 #7
:o)
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:49 #8
Jeg vil også meget gerne have lavet en validering i forbindelse med formen
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:49 #9
Kald siden for mail.asp
--------------------
<%
session("send") = ""
if request.queryString("mode")="send" then

Set Message = Server.CreateObject("JMail.SMTPMail")

    Message.ContentTransferEncoding = "8bit"
    Message.Charset = "ISO-8859-1"

        Message.Priority = 1
        Message.ServerAddress = "SKOLENS POP3"
        Message.Sender = "eksperten@bokaj.dk"
        Message.Subject = "Mail fra kontaksiden"
        Message.Body = "Denne mail er sent fra kontaktiden" & vbCrLf & vbCrLf
        Message.Body= Message.Body + "******************************" & vbCrLf
        Message.Body= Message.Body + "Navn: " & request.form("navn") & vbCrLf
        Message.Body= Message.Body + "Adresse: " & request.form("adresse") & vbCrLf
        Message.Body= Message.Body + "Postnummer: " & request.form("postnr") & vbCrLf
        Message.Body= Message.Body + "By: " & request.form("by") & vbCrLf
        Message.Body= Message.Body + "Emne: " & request.form("emne") & vbCrLf
        Message.Body= Message.Body + "Besked: " & request.form("besked") & vbCrLf
        Message.Body= Message.Body + "*******************************"

    Message.AddRecipient "eksperten@bokaj.dk" ' Det er denne adresse der modtager mailen

    Message.Execute
set Message = nothing
session("send") = "Mailen er sendt"
end if
%>
<html>

<head>
</head>

<body>

<form method="POST" action="mail.asp?mode=send">
<p align="center"><b><font face="Verdana" size="2"><%response.write session("send")%></font></b>
  <table border="0" width="100%" height="355">
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Navn:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="navn" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Adresse:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="adresse" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Postnummer:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="postnr" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">By:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="by" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="24"><font face="Verdana" size="1">Emne:</font> </td>
      <td width="88%" height="24"><font face="Verdana" size="1"><select size="1" name="emne">
          <option selected>emne 1</option>
          <option>emne 2</option>
          <option>emne 3</option>
        </select></font></td>
    </tr>
    <tr>
      <td width="12%" valign="top" height="176"><font face="Verdana" size="1">Besked:</font> </td>
      <td width="88%" height="176"><font face="Verdana" size="1"><textarea rows="8" name="besked" cols="47"></textarea></font></td>
    </tr>
    <tr>
      <td width="100%" colspan="2" height="27">
        <p align="center"><font face="Verdana" size="1"><input type="submit" value="Send" name="B1"><input type="reset" value="Nulstil" name="B2"></font></td>
    </tr>
  </table>
</form>
<p>&nbsp;</p>

</body>

</html>
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:51 #10
Hvis du retter sidens navn skal du rette mail.asp til det rigtige i denne linie:
------------
<form method="POST" action="mail.asp?mode=send">
------------
Husk at indtaske SKOLENS POP3
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 14:56 #11
Mangler der ikke et email input felt, altså afsenderens email adresse?
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 14:59 #12
Okay den havde jeg glemt kommer med sammen med valideringen
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:11 #13
Mail.asp skal se sådan her ud:
----------------
<script language='JavaScript1.2' src='validatesubmit.js'></script>
<%
session("send") = ""
if request.queryString("mode")="send" then

Set Message = Server.CreateObject("JMail.SMTPMail")

    Message.ContentTransferEncoding = "8bit"
    Message.Charset = "ISO-8859-1"

        Message.Priority = 1
        Message.ServerAddress = "SKOLENS POP3"
        Message.Sender = "eksperten@bokaj.dk"
        Message.Subject = "Mail fra kontaksiden"
        Message.Body = "Denne mail er sent fra kontaktiden" & vbCrLf & vbCrLf
        Message.Body= Message.Body + "******************************" & vbCrLf
        Message.Body= Message.Body + "Navn: " & request.form("navn") & vbCrLf
        Message.Body= Message.Body + "Adresse: " & request.form("adresse") & vbCrLf
        Message.Body= Message.Body + "Postnummer: " & request.form("postnr") & vbCrLf
        Message.Body= Message.Body + "By: " & request.form("by") & vbCrLf
        Message.Body= Message.Body + "E-Mail: " & request.form("mail") & vbCrLf
        Message.Body= Message.Body + "Emne: " & request.form("emne") & vbCrLf
        Message.Body= Message.Body + "Besked: " & request.form("besked") & vbCrLf
        Message.Body= Message.Body + "*******************************"

    Message.AddRecipient "eksperten@bokaj.dk" ' Det er denne adresse der modtager mailen

    Message.Execute
set Message = nothing
session("send") = "Mailen er sendt"
end if
%>
<html>

<head>
</head>

<body>

<form name="mailform" method="POST" onsubmit="return validatesubmit(this)" action="mail.asp?mode=send">
<p align="center"><b><font face="Verdana" size="2"><%response.write session("send")%></font></b>
  <table border="0" width="100%" height="355">
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Navn:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="navn" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Adresse:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="adresse" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Postnummer:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="postnr" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">By:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="by" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="24"><font face="Verdana" size="1">E-Mail:</font> </td>
      <td width="88%" height="24"><font face="Verdana" size="1"><input type="text" name="mail" size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="24"><font face="Verdana" size="1">Emne:</font> </td>
      <td width="88%" height="24"><font face="Verdana" size="1"><select size="1" name="emne">
          <option selected>emne 1</option>
          <option>emne 2</option>
          <option>emne 3</option>
        </select></font></td>
    </tr>
    <tr>
      <td width="12%" valign="top" height="176"><font face="Verdana" size="1">Besked:</font> </td>
      <td width="88%" height="176"><font face="Verdana" size="1"><textarea rows="8" name="besked" cols="47"></textarea></font></td>
    </tr>
    <tr>
      <td width="100%" colspan="2" height="27">
        <p align="center"><font face="Verdana" size="1"><input type="submit" value="Send" name="B1"><input type="reset" value="Nulstil" name="B2"></font></td>
    </tr>
  </table>
</form>
<p>&nbsp;</p>

</body>

</html>
----------------
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:12 #14
Så skal dette gemmes i en fil med navnet validatesubmit.js og ligge i samme mappe som mail.asp
--------------
function validatesubmit(mailform)
  {
  invalidchar = "/:,;"
if (mailform.navn.value == "")
  {
    alert("Indtast navn.");
    mailform.navn.focus();
    return (false);
  }
if (mailform.adresse.value == "")
  {
    alert("Indtast adresse.");
    mailform.adresse.focus();
    return (false);
  }
if (mailform.postnr.value == "")
  {
    alert("Indtast postnr.");
    mailform.postnr.focus();
    return (false);
  }
if (mailform.by.value == "")
  {
    alert("Indtast by.");
    mailform.by.focus();
    return (false);
  }

            for (i=0; i<invalidchar.length; i++)
            {
                errorchar = invalidchar.charAt(i)
                if (mailform.mail.value.indexOf(errorchar, 0) > -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            }
            position = mailform.mail.value.indexOf("@", 1)
            if (position == -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            if (mailform.mail.value.indexOf("@", position+1) != -1)       
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);               
                    }
            periodpos = mailform.mail.value.indexOf(".", position)
            if (periodpos == -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);               
                    }
            if (periodpos+3 > mailform.mail.value.length)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);   
                    }
if (mailform.besked.value == "")
  {
    alert("Indtast besked.");
    mailform.besked.focus();
    return (false);
  }

  return true;
}
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:13 #15
Virker det?
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 15:16 #16
Den virker, men den sender ikke den indtastede email som afsender.
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:18 #17
Du skal rette denne linie til din afsender:
-------------
Message.Sender = "eksperten@bokaj.dk"
-------------
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 15:19 #18
Synes der mangler lidt ved validering:

- Man kan indtaste bogstaver i post nr. og alle dem man vil
- der kan være mere end 3 tegn efter punktum i email adresse
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:22 #19
Ja tekst i Postnumre er ikke unormalt fx. D-12458 Hamburg
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 15:24 #20
Det er så i orden!

Men det med antal bogstaver efter punktum i mail synes jeg ikke er helt ok.

Når du er kommet med en rettelse til det gives pointene!
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:26 #21
Okay - 5 min
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 15:42 #22
Afsender adressen er nu ">eksperten@bokaj.dk

eksperten@bokaj.dk - er den indtastede adressen
Hvordan fjerner jeg ">  ??
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:52 #23
Byt koden i js filen ud med dette:
-------------
function validatesubmit(mailform)
  {
  invalidchar = "/:,;"
if (mailform.navn.value == "")
  {
    alert("Indtast navn.");
    mailform.navn.focus();
    return (false);
  }
if (mailform.adresse.value == "")
  {
    alert("Indtast adresse.");
    mailform.adresse.focus();
    return (false);
  }
if (mailform.postnr.value == "")
  {
    alert("Indtast postnr.");
    mailform.postnr.focus();
    return (false);
  }
if (mailform.by.value == "")
  {
    alert("Indtast by.");
    mailform.by.focus();
    return (false);
  }

            for (i=0; i<invalidchar.length; i++)
            {
                errorchar = invalidchar.charAt(i)
                if (mailform.mail.value.indexOf(errorchar, 0) > -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            }
            position = mailform.mail.value.indexOf("@", 1)
            if (position == -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            if (mailform.mail.value.indexOf("@", position+1) != -1)       
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);               
                    }
            periodpos = mailform.mail.value.indexOf(".", position)
            if (periodpos == -1)
                    {
                    alert("emailaddressen er ikke korrekt1.")
                    mailform.mail.focus();
                    return (false);               
                    }
            if (periodpos+3 > mailform.mail.value.length)
                    {
                    alert("emailaddressen er ikke korrekt2.")
                    mailform.mail.focus();
                    return (false);   
                    }
            if (periodpos != mailform.mail.value.length-4 && periodpos != mailform.mail.value.length-3)
                    {
                    alert("emailaddressen er ikke korrekt3.")
                    mailform.mail.focus();
                    return (false);   
                    }
if (mailform.besked.value == "")
  {
    alert("Indtast besked.");
    mailform.besked.focus();
    return (false);
  }

  return true;
}
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 15:52 #24
Byt koden i js filen ud med dette:
-------------
function validatesubmit(mailform)
  {
  invalidchar = "/:,;"
if (mailform.navn.value == "")
  {
    alert("Indtast navn.");
    mailform.navn.focus();
    return (false);
  }
if (mailform.adresse.value == "")
  {
    alert("Indtast adresse.");
    mailform.adresse.focus();
    return (false);
  }
if (mailform.postnr.value == "")
  {
    alert("Indtast postnr.");
    mailform.postnr.focus();
    return (false);
  }
if (mailform.by.value == "")
  {
    alert("Indtast by.");
    mailform.by.focus();
    return (false);
  }

            for (i=0; i<invalidchar.length; i++)
            {
                errorchar = invalidchar.charAt(i)
                if (mailform.mail.value.indexOf(errorchar, 0) > -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            }
            position = mailform.mail.value.indexOf("@", 1)
            if (position == -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);
                    }
            if (mailform.mail.value.indexOf("@", position+1) != -1)       
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);               
                    }
            periodpos = mailform.mail.value.indexOf(".", position)
            if (periodpos == -1)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);               
                    }
            if (periodpos+3 > mailform.mail.value.length)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);   
                    }
            if (periodpos != mailform.mail.value.length-4 && periodpos != mailform.mail.value.length-3)
                    {
                    alert("emailaddressen er ikke korrekt.")
                    mailform.mail.focus();
                    return (false);   
                    }
if (mailform.besked.value == "")
  {
    alert("Indtast besked.");
    mailform.besked.focus();
    return (false);
  }

  return true;
}
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 16:01 #25
mangler stadig det med fejl i afsender:

Her er hele mail.asp koden:
<script language='JavaScript1.2' src='validatesubmit.js'></script>
<%
session("send") = ""
if request.queryString("mode")="send" then

Set Message = Server.CreateObject("JMail.SMTPMail")

    Message.ContentTransferEncoding = "8bit"
    Message.Charset = "ISO-8859-1"

        Message.Priority = 1
        Message.ServerAddress = "mail.ikasths.dk"
        Message.Sender = request.form("mail")
        Message.Subject = request.form("emne")
        Message.Body = "Denne mail er sent fra kontaktiden" & vbCrLf & vbCrLf
        Message.Body= Message.Body + "******************************" & vbCrLf
        Message.Body= Message.Body + "Navn: " & request.form("navn") & vbCrLf
        Message.Body= Message.Body + "Adresse: " & request.form("adresse") & vbCrLf
        Message.Body= Message.Body + "Postnummer: " & request.form("postnr") & vbCrLf
        Message.Body= Message.Body + "By: " & request.form("by") & vbCrLf
        Message.Body= Message.Body + "E-Mail: " & request.form("mail") & vbCrLf
        Message.Body= Message.Body + "Emne: " & request.form("emne") & vbCrLf
        Message.Body= Message.Body + "*******************************"
        Message.Body= Message.Body + "Besked: " & request.form("besked") & vbCrLf
        Message.Body= Message.Body + "*******************************"

    Message.AddRecipient "mikemcla@cs.auc.dk" ' Det er denne adresse der modtager mailen

    Message.Execute
set Message = nothing
session("send") = "Mailen er sendt"
end if
%>
<html>

<head>
</head>

<body>

<form name="mailform" method="POST" onsubmit="return validatesubmit(this)" action="mail.asp?mode=send">
<p align="center"><b><font face="Verdana" size="2"><%response.write session("send")%></font></b>
  <table border="0" width="100%" height="355">
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Navn:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="navn"

size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Adresse:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="adresse"

size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">Postnummer:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="postnr"

size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="25"><font face="Verdana" size="1">By:</font> </td>
      <td width="88%" height="25"><font face="Verdana" size="1"><input type="text" name="by"

size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="24"><font face="Verdana" size="1">E-Mail:</font> </td>
      <td width="88%" height="24"><font face="Verdana" size="1"><input type="text" name="mail"

size="20"></font></td>
    </tr>
    <tr>
      <td width="12%" height="24"><font face="Verdana" size="1">Emne:</font> </td>
      <td width="88%" height="24"><font face="Verdana" size="1"><select size="1" name="emne">
          <option selected>Tilmelding til Ferniseringskort</option>
          <option>E-mail til galleriet</option>
        </select></font></td>
    </tr>
    <tr>
      <td width="12%" valign="top" height="176"><font face="Verdana" size="1">Besked:</font> </td>
      <td width="88%" height="176"><font face="Verdana" size="1"><textarea rows="8" name="besked"

cols="47"></textarea></font></td>
    </tr>
    <tr>
      <td width="100%" colspan="2" height="27">
        <p align="center"><font face="Verdana" size="1"><input type="submit" value="Send" name="B1"><input

type="reset" value="Nulstil" name="B2"></font></td>
    </tr>
  </table>
</form>
<p>&nbsp;</p>

</body>

</html>
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 16:03 #26
Skal der være en <script> lige efter start tag'et ?

Skal der ikke stå: <%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
Avatar billede jakobclausen Nybegynder
14. maj 2003 - 16:08 #27
Ok, det virker nu.

Jeg takker for hjælpen!
Avatar billede kimlarsen1978 Nybegynder
14. maj 2003 - 16:10 #28
Der her <script language='JavaScript1.2' src='validatesubmit.js'></script> skal stå lige efter <%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%> Hvis du skal have det med @Language med
Sådan her:
--------
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="1252"%>
<script language='JavaScript1.2' src='validatesubmit.js'></script>
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