/ Forside/ Teknologi / Udvikling / HTML / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
HTML
#NavnPoint
molokyle 11184
Klaudi 5506
bentjuul 3377
severino 2040
smorch 1950
strarup 1525
natmaden 1396
scootergr.. 1320
e.c 1150
10  miritdk 1110
mail me
Fra : Angband
Vist : 780 gange
100 point
Dato : 31-10-04 21:03

er der nogen der kan lave en mail me function hvor brugeren, kan sende en mail til mig fra min hjemme-side???
forklar venligst koden, da jeg helst vil forstå det jeg laver ;)

 
 
Kommentar
Fra : ibenkh


Dato : 31-10-04 21:10

Er det et link, man klikker på, du søger så er det følgende:

<a href=mailto:dinemail@domain.dk>Skriv til mig</a>

Du skiftes naturligvis "dinemail@domain.dk" ud med den pågældende emailadr.

"Skriv til mig" er den tekst, der kommer til at stå på siden...

Hvis det ikke er dette du søger, men derimod en form, hvor man skriver og sender direkte fra siden er det mere kompleks end som så. Skriv igen, hvis det er en form og cgi-script du ønsker at lave.

Kommentar
Fra : Angband


Dato : 31-10-04 21:12

det må være en form jeg søger... den der åbner vist en outlook, og den er der mange der ikke bruge... syntes selv det er irreterende, så det må være en form jeg mangler ;)

Kommentar
Fra : hamderhtlm


Dato : 31-10-04 21:12

Det er ikke sådan noget han leder efter


Han er god.. Så sådan noget Mailto knap kan han godt

\Hamderhtml

Kommentar
Fra : Angband


Dato : 31-10-04 21:15

JEG ER GOD WEEEE :D

undskyld, det skulle bare ud :P

Kommentar
Fra : ibenkh


Dato : 31-10-04 21:23

ok, så skal du igang med forms og cgi-scripts

En form skal f.eks laves således:

<form action="cgi-bin/ditcgiscript.cgi" method="get">
Navn <input type="text" name="navn"/><br/>
Email <input type="text" name="email"/><br/>
Tekst <textarea name="text" rows="12" cols="60"></textarea><br/>
<input type="submit" value="Send mail"/>
<input type="reset" value="Fortryd"/>
</form>

Første linie starter din form, hvor du angiver hvilket cgi-script du vil kalde
De næste par linier er forskellige typer af input-boxe, hvor du benytter navnet name="navn" i dit cgi-script til at angive, hvilken box du henviser til.
<textarea ...> er en større box, hvor du kan skrive beskeden i,
<input type="submit" value="Send mail"> laver en knap, hvorpå der står "Send mail"
<input type="reset" value="Fortryd"/> laver en fortryd knap, der sletter alt

Herefter skal vi til cgi-script...

Kommentar
Fra : Angband


Dato : 31-10-04 21:28

hmmm prøv at forklar lidt merre... ved ikke hvad cgi koder er for nogen :S

Kommentar
Fra : ibenkh


Dato : 31-10-04 21:29

yes, det er på vej...
skal bare lige finde et gammelt et jeg kan kigge på...

Kommentar
Fra : Angband


Dato : 31-10-04 21:30

:P... lyder godt

Kommentar
Fra : ibenkh


Dato : 31-10-04 21:32

#!/usr/bin/perl -w
use CGI qw(:standard);
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
use strict;

$ENV{PATH} = "/usr/sbin";

open (MAIL, "|/usr/sbin/sendmail -oi -t");

my $recipient = 'dinemail@domain.dk';
my $fromname = param('navn');
my $fromemail = param('email');
my $emne = param('emne');
my $tekst = param('text');

print MAIL "To: $recipient\n";
print MAIL "From: $fromemail\n";
print MAIL "Subject: $emne\n\n";
print MAIL <<EndMAIL;
EndMAIL

close(MAIL);

$tekst =~ s/\r\n/<br>\n/g;

open(SVAR, ">svarmail.html");

print SVAR <<EndHTML;
<h2>Tak for din mail.</h2>
Jeg skal forsøge at vende tilbage, så hurtigt som muligt.<br>
<br>
<b>Dit navn:</b> $fromname <br>
<b>Din email:</b> $fromemail <br>
<b>Emne:</b> $emne <br>
<b>Tekst</b> $tekst <br>
EndHTML

close(SVAR);

print "Location: http://www.dinside.dk/svarmail.html";

Kommentar
Fra : Steffansteffan


Dato : 31-10-04 21:33

Du kan bruge dette som er lavet i asp:

Det består af 2 filer:

Kald den hvad du vil, f.eks. form.html

<form method="post" action="kontakt.asp">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="7%" height="20">Navn:</td>
<td width="93%"><input type="text" name="navn" class="input" size="55"></td>
</tr>
<tr>
<td height="20">Emne:</td>
<td><input type="text" name="emne" class="input" size="55"></td>
</tr>
<tr>
<td height="20">Mail:</td>
<td><input type="text" name="email" class="input" size="55"></td>
</tr>
<tr>
<td valign="top">Tekst:</td>
<td><textarea name="tekst" class="input" cols="60" rows="8"></textarea></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="Submit2" value="Send" class="input"></td>
</tr>
</table>
</form>

kontakt.asp

<%
dim navn01, emne01, email01, tekst01

navn01 = Request.Form("navn")
email01 = Request.Form("email")
emne01 = Request.Form("emne")
tekst01 = Request.Form("tekst")

Set JMail = Server.CreateObject("JMail.SMTPMail")
JMail.ContentType = "text/html"
JMail.Priority = 3
JMail.Sender = ""&email01&""
JMail.AddRecipient "webmaster@pcfreek.dk"
JMail.Subject = "PCfreek.dk - Formmail"
JMail.Body = "<font face=""arial"" size=""2"">Du har modtaget denne mail fordi der er en som har udfyldt formular feltet på PCfreek.dk<br><br>Navn: "& navn01 &"<br><br>Emne: "&emne01&"<br><br>E-Mail: "&email01&"<br><br>Besked: "&tekst01&"</font>"
JMail.Execute

Set JMail = Nothing

Response.write("<br><b>Tak, for din Mail.</b> <br><br>Vi har nu modtaget din mail og hvis vi tager indholdet seriøst vil vi besvare mailen hurtigst muligt.<br><br>m.v.h<br>Crew - PCFreek.dk")
%>

Ja det er faktisk det, så uploader du bare de to filer på din serer skal sevlfølgelig skal understøtte asp, men held og lykke med det.



Kommentar
Fra : Angband


Dato : 31-10-04 21:34

og det skal ind imellem form og tekst area??? tænkte lige på, hvad skal ind i svarmail.html???

Accepteret svar
Fra : ibenkh

Modtaget 110 point
Dato : 31-10-04 21:43

cgi-script kan skrives i et hvilket som helst programmeringssprog, men det er nemmest at skrive det i perl, da der er mest info om det på nettet.

Det script, jeg har lagt op, er skrevet i perl, hvilket er forklaringen af de første 3 linier.
Dette kræver dog at du har unix/linux-baseret server.

De næste par linier angiver, hvor "sendmail"-kommandoen ligger.

my $recipient = ... Her bliver nogle variable oprettet, som henter det, du indtastede i formen. Her henviser param('navn') til den box du i formen kaldte name="navn"

print MAIL ... Her angiver du til hvem, fra hvem, emnet og indholdet af mailen.
NB Mellem de to linier "print MAIL <<EndMAIL;" og "EndMAIL" skulle der have stået "$tekst" for at angive at her skal indholdet af mailen stå.

$tekst =~ s/\r\n/<br>\n/g; Her byttet endline-karakter ud med <br>, således at teksten bliver pæn i html-kode til din svarside, der bliver lavet efterfølgende.

Tilsidst redirect'es til svarmail-siden...

Håber det hjalp lidt...





Kommentar
Fra : ibenkh


Dato : 31-10-04 21:49

cgi-scriptet er en fil for sig, som hedder *.cgi og ligger gerne i en mappe for sig, der hedder cgi-bin

husk at filen skal være eksekvebar, dette gøres ved chmod a+x ditcgiscript.cgi

Godkendelse af svar
Fra : Angband


Dato : 31-10-04 21:53

Tak for svaret ibenkh.
                        

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407832
Brugere : 218875

Månedens bedste
Årets bedste
Sidste års bedste