Avatar billede hybel Nybegynder
15. juli 2002 - 09:59 Der er 10 kommentarer og
1 løsning

FormMail i ASP

Jeg har flyttet min hjemmeside til cliche.dk som understøtter ASP, og så er det jeg tænker på om man ikke kan lave en FormMail i ASP så man ikke behøver at bruge en rigtig FormMail.pl hvis i forstår.

Hvis man nu ønsker at sende mail via ASP, hvordan kan en .asp side så se ud ?!

Har i nogen eksempler ?!

- Hybel.
Avatar billede hells Nybegynder
15. juli 2002 - 10:05 #1
her er et script til aspmail, hvilket de vist understøtter:
http://www.html.dk/scripts/asp/00003/
Avatar billede agg-zeus Nybegynder
15. juli 2002 - 10:15 #2
Jeg bruger følgende:


'******** BESKED SENDES START ********
'--------------ASPEmail start---------------------


Set Mail = Server.CreateObject("Persits.MailSender")
            Mail.Host = "emailservere"
            Mail.From = "fra"
            Mail.AddAddress "email"
            Mail.AddCC "email"
            Mail.Subject = "emne"
            Mail.isHTML = True
                Mail.Body = "hvad der nu skal stå i mailen!"
               
            On Error Resume Next
            Mail.Send
            If Err <> 0 Then
            Response.Write "An error occurred: " & Err.Description & VbCrlf
            Response.Write "In the following file: " & Err.File & VbCrlf
            Response.Write "In the following line: " & Err.Line
            End If

            mail.close
            set Mail = nothing
Avatar billede agg-zeus Nybegynder
15. juli 2002 - 10:16 #3
hehe :-) Jeg har en ven som kender ham der lige har købt Cliche ...
Avatar billede agg-zeus Nybegynder
15. juli 2002 - 10:22 #4
Har lige fundet følgende på cliche.dk:

Til ASP hoteller er tilknyttet flg. komponenter ASPmail, ASPemail, ASPsmartupload, ASPhttp, ASPping, W3 sockets, Jmail, Guid maker og Wait for.
Avatar billede hybel Nybegynder
15. juli 2002 - 21:12 #5
Nu spør' jeg måske lidt dumt...

Når jeg har en formular liggende på min hjemmeside hvor div. felter udfyldes, skal ASP koden herover så ind under <body> eller skal min formular bruge ASP koden som action:post eller hvad ?!

Jeg ville blive glad for et fiktivt eksempel på, hvordan en test.htm side ser ud inkl. ASP koderne herover...

- Hybel
Avatar billede agg-zeus Nybegynder
15. juli 2002 - 22:36 #6
<html>
<head>
    <title></title>
    <link rel="stylesheet" href="../style/standard.css" type="text/css">
    </head>
<h2 align="center">Bestilling</h2>

<table width="400">
<form action="dinaspside.asp?mode=send">" method="post">
<tr><td valign="top" width="220"><p>Fornavn: </p></td>
<td valign="top" width="180">
<input type="text" name="fornavn" size="15" class="form"></td>
</tr>

<tr><td valign="top"><p>Efternavn: </p></td>
<td valign="top">
<input type="text" name="efternavn" size="15" class="form"></td>
</tr>

<tr><td valign="top"><p>Adresse: </p></td>
<td valign="top">
<input type="text" name="adresse" size="15" class="form"></td>
</tr>

<tr><td valign="top"><p>Postnr.: </p></td>
<td valign="top">
<input type="text" name="postnr" size="15" class="form"></td>
</tr>

<tr><td valign="top"><p>By: </p></td>
<td valign="top">
<input type="text" name="by" size="15" class="form"></td>
</tr>

<tr><td valign="top"><p>E-mail: </p></td>
<td valign="top">
<input type="text" name="email" size="15" class="form"></td>
</tr>

<tr><td valign="top"></td>
<td valign="top"><br>
<input type="submit" name="bestil" value="Bestil" class="form"></td>
</tr>
</form>

</table>

<% If Request.Questring("mode") = "send" Then

'******** BESKED SENDES START ********
'--------------ASPEmail start---------------------


Set Mail = Server.CreateObject("Persits.MailSender")
            Mail.Host = "emailservere"
            Mail.From = Request.Form("fornavn")+Request.form("efternavn")
            Mail.AddAddress Request.Form("email")
            Mail.AddCC "endnuenmail"
            Mail.Subject = "Hvad dit emne nu er!"
            Mail.isHTML = True  ' når dette er True, så kan mailen indeholde HTML-koder !
                Mail.Body = "hvad der nu skal stå i mailen!"
               
            On Error Resume Next
            Mail.Send
            If Err <> 0 Then
            Response.Write "An error occurred: " & Err.Description & VbCrlf
            Response.Write "In the following file: " & Err.File & VbCrlf
            Response.Write "In the following line: " & Err.Line
            End If

            mail.close
            set Mail = nothing
Response.Write "mailen er sendt!"
<% End IF %>

</body>
</html>
Avatar billede agg-zeus Nybegynder
15. juli 2002 - 22:41 #7
hovsa.. der havde sneget sig en lille fejl ind! dette er et andet eksempel der måske er nemmere at forstå ! her er det:


<html>

<head>
    <title></title>
        <link rel="stylesheet" href="../css/style.css" type="text/css">
</head>

<body>

<h2 align="center">::  Send en ny mail</h2>



<table align="left">
<form action="sendmail.asp?mode=send" method="post">
<tr><td valign="top">
<p>Modtagers E-mail: </p>
</td>
<td valign="top">
<input type="text" name="modtager" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>Bcc modtager: </p>
</td>
<td valign="top">
<input type="text" name="bccmodtager" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>Emne: </p>
</td>
<td valign="top">
<input type="text" name="emne" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>E-mail: </p>
</td>
<td valign="top">
<textarea rows="15" cols="100" name="mail" class="form"></textarea>
</td></tr>


<tr><td valign="top">
</td>
<td valign="top">
<input type="Submit" name="submit" value="..:: Send Mail ::.." class="sms">
</td></tr>

</form>

<tr><td valign="top">
</td>
<td valign="top"><br><br>
<p>Bemærk: Alle HTML koder er tilladte !</p>
</td></tr>
</table>


</body>
</html>


<% If Request.Querystring("mode") = "send" Then


Dim mailtext, email
    If Request.Form("modtager") = "" or Request.Form("mail") = "" Then
        mailtext = "<div align=""center"" style='font-size:16px; color: red; font-weight: bold; font-family: ""Times New Roman"";'>Alle felter skal udfyldes !</div>"
    Response.Write mailtext
    Else


'******** BESKED SENDES START ********
'--------------ASPEmail start---------------------
email = Replace(Request.Form("mail"),vbCrLf,"<br>")

Set Mail = Server.CreateObject("Persits.MailSender")
            Mail.Host = "mailserver"
            Mail.From = Session("email") ' her skal du selvfølgelig hente den mail der ska referes til ind !
            Mail.FromName = "Dit navn"
            Mail.AddAddress Request.Form("modtager")
            Mail.AddAddress Request.Form("bccmodtager")
            Mail.Subject = Request.Form("emne")
            Mail.isHTML = True
                Mail.Body = email
           
            On Error Resume Next
            Mail.Send 
        Response.Redirect("mailsendt.asp")   
    End If


End If

%>



Håber at du kan bruge det ?!
Avatar billede hybel Nybegynder
16. juli 2002 - 10:30 #8
Fint nok... men mailformen skal ikke indeholde mail to: det felt skal automatisk være udfyldt.

Der skal kun være felterne: Fra navn, fra email, samt besked, så sender den automatisk beskeden til en forud defineret email.

Hvad skal så ændres ?!


- Hybel
Avatar billede agg-zeus Nybegynder
16. juli 2002 - 11:52 #9
<html>

<head>
    <title></title>
        <link rel="stylesheet" href="../css/style.css" type="text/css">
</head>

<body>

<h2 align="center">::  Send en ny mail</h2>



<table align="left">
<form action="sendmail.asp?mode=send" method="post">
<tr><td valign="top">
<p>Din E-mail: </p>
</td>
<td valign="top">
<input type="text" name="afsender" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>Dit navn: </p>
</td>
<td valign="top">
<input type="text" name="afsendernavn" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>Emne: </p>
</td>
<td valign="top">
<input type="text" name="emne" size="30" class="form">
</td></tr>

<tr><td valign="top">
<p>E-mail: </p>
</td>
<td valign="top">
<textarea rows="15" cols="100" name="mail" class="form"></textarea>
</td></tr>


<tr><td valign="top">
</td>
<td valign="top">
<input type="Submit" name="submit" value="..:: Send Mail ::" class="sms">
</td></tr>

</form>

<tr><td valign="top">
</td>
<td valign="top"><br><br>
<p>Bemærk: Alle HTML koder er tilladte !</p>
</td></tr>
</table>


</body>
</html>


<% If Request.Querystring("mode") = "send" Then


Dim mailtext, email
    If Request.Form("modtager") = "" or Request.Form("mail") = "" Then
        mailtext = "<div align=""center"" style='font-size:16px; color: red; font-weight: bold; font-family: ""Times New Roman"";'>Alle felter skal udfyldes !</div>"
    Response.Write mailtext
    Else


'******** BESKED SENDES START ********
'--------------ASPEmail start---------------------
email = Replace(Request.Form("mail"),vbCrLf,"<br>") ' Her bliver alle tryk på enter erstattet af <br>

Set Mail = Server.CreateObject("Persits.MailSender")
            Mail.Host = "mailserver"
            Mail.From = Request.Form("afsender")
            Mail.FromName = Request.Form("afsendernavn")
            Mail.AddAddress "dinmail"
            Mail.Subject = Request.Form("emne")
            Mail.isHTML = True
                Mail.Body = email
           
            On Error Resume Next
            Mail.Send 
        Response.Redirect("mailsendt.asp")   
    End If


End If

%>

sådan skulle det se ud hvis jeg har forstået dig rigtigt... ?
Avatar billede hybel Nybegynder
17. juli 2002 - 16:44 #10
agg-zeus -> Tak for det... her er dine velfortjente point.

Hvis jeg har flere felter som skal udfyldes, skal jeg så bare tilføje en: Mail.Subject = Request.Form("XXX") for hver felt ?!

- Hybel
Avatar billede agg-zeus Nybegynder
18. juli 2002 - 09:40 #11
Det kommer jo an på om du skal have det indtastede med i mailen ? eller hvad det er for noget der mere skal indtastes!?

Mail.Subject er jo emnet i mailen !
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