Avatar billede bremer Nybegynder
02. december 2008 - 20:39 Der er 12 kommentarer og
1 løsning

Hjælp til simpel formmail

Hej venner,

Jeg sidder og arbejder med en meget simpel mailScript som ser sådan her ud og virker nu helt fint.

---------------------

<?php
$tm_navn = $_POST['tm_navn']; //senders name
$tm_email = $_POST['tm_email']; //senders e-mail adress
$recipient = "navn@domain.dk"; //recipient
$tm_besked = $_POST['".tm_besked."<".tm_nyhedsbrev."\r\n"']; //mail body
$tm_emne = $_POST['tm_emne']; //subject
$header = "From: ". $tm_navn . " <" . $tm_email . ">\r\n"; //optional headerfields

mail($recipient, $tm_emne, $tm_besked, $header); //mail command :)
?>

---------------------

- men jeg ønsker også, at få disse værdier med i min mail.

$tm_nyhedsbrev
$tm_website
$tm_telefon
$tm_firma

Hvad skal jeg gøre hertil? - Håber i kan hælpe mig med denne ting.
Avatar billede jakobdo Ekspert
02. december 2008 - 20:45 #1
Du skal rette:

$tm_besked = $_POST['".tm_besked."<".tm_nyhedsbrev."\r\n"']; //mail body
til:
$tm_besked = $_POST['tm_besked']; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= $tm_nyhedsbrev; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= $tm_website; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= $tm_telefon; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= $tm_firma; //mail body
Avatar billede bremer Nybegynder
02. december 2008 - 21:55 #2
nu efter når jeg har rettet det til virker det helt fint ;)- men hvis jeg kunne ønske mig lidt validering hertil dette mailScript - hvad skal jeg så gøre?

Sådan her ser mit MailScript ud lige nu.
Avatar billede bremer Nybegynder
02. december 2008 - 21:55 #3
<?php
$tm_navn = $_POST['tm_navn']; //senders name
$tm_email = $_POST['tm_email']; //senders e-mail adress
$recipient = "navn@domain.dk"; //recipient
//$tm_besked = $_POST['".tm_besked."<".tm_nyhedsbrev."\r\n"']; //mail body
$tm_besked = "Besked: ". $_POST['tm_besked']; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= "Nyhedsbrev: ". $_POST['tm_nyhedsbrev']; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= "Website: ". $_POST['tm_website']; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= "Telefon: ". $_POST['tm_telefon']; //mail body
$tm_besked .= "\r\n"; //mail body
$tm_besked .= "Firma: ". $_POST['tm_firma']; //mail body
$tm_emne = $_POST['tm_emne']; //subject
$header = "From: ". $tm_navn . " <" . $tm_email . ">\r\n"; //optional headerfields

mail($recipient, $tm_emne, $tm_besked, $header); //mail command :)
?>
Avatar billede jakobdo Ekspert
03. december 2008 - 08:05 #4
Du bliver nok nød til at uddybe validering ?
Hvad er validering for dig ?
Hvad er et telefon nummer f.eks. ?

112 - Alarm
1234 - Lokal telefonnummer måske?
12345678 - Almindelig dansk telefon nummer.
+4512345678 - Almindelig dansk telefon nummer.
+45 12345678 - Almindelig dansk telefon nummer.

+358 12345454545 osv...

Tror du har fanget den.
Så du skal først definere hvad du vil acceptere som input og så kan man lave validering ud fra det.
Avatar billede bremer Nybegynder
03. december 2008 - 10:15 #5
hehe ;) jeg forstår,

Det som jeg ønsker, at lave validering på er:

a) hvis der ikke er indtastet noget som helst i felterne.
b) hvis der ikke er indtastet noget i "tm_email"
c) hvis der ikke er indtastet noget i "tm_navn"
d) hvis der ikke er indtastet noget i "tm_telefon"

Så hvis disse værdier mangler, ville jeg gerne kunne sende dem over til en anden side.
noget i stil lala.... "http://www.domainnavn.dk/kontakt_fejl.php"

Venlig Hilsen
/Bremer
Avatar billede mcgoat Nybegynder
03. december 2008 - 10:19 #6
if($_POST['tm_navn'] = "" || $_POST['tm_email'] || ...) header("Location: kontakt_fejl.php");

man kunne lave noget ala det, men ville nok hellere lave det i JS :-)
Avatar billede jakobdo Ekspert
03. december 2008 - 10:28 #7
Du kan tjekke en variabel på følgende måde:

if(isset($_POST['variabel_navn'])) //Er variablen sat ?
if(empty($_POST['variabel_navn'])) //Er variablen tom ?
if($_POST['variabel_navn'] == "") //Er variablen tom ?

Der er mange måder.
Avatar billede dkfire Nybegynder
03. december 2008 - 10:37 #8
mcgoat: gå aldrig ud fra at validering med JS er nok. JS kan man slå fra og arbejde udenom, du slipper aldrig for at lave validering på server siden.
Avatar billede mcgoat Nybegynder
03. december 2008 - 10:41 #9
Kommer vel også an på hvad man skal bruge det til, hvor sikkert man vil have det :-) Hvis det nu bare var tilmelding til nyhedsbrev eller noget i den dur "behøver" man jo ikke lave for meget ud af det :-)
Avatar billede bremer Nybegynder
03. december 2008 - 10:57 #10
Så hvis jeg eksempelvis bruger denne måde:

if(empty($_POST['tm_email'])) //Er variablen tom ?

Hvad skal jeg så skrive mere, hvor der der kommer en advarelse op til brugerne?

Kan man gøre sådan her??

if(empty($_POST['tm_email'])
echo "Du mangler E-mail!";
) //Er variablen tom
Avatar billede dkfire Nybegynder
03. december 2008 - 11:04 #11
JS validering er kun noget man laver for brugerens skyld, ikke for systemets skyld. Hvis du ikke følger en JS validering op med en server side validering, så hjælper din JS validering ikke på noget.
Det er jo for eksempel ikke alle spambots som har JS kørende ;-)
Avatar billede bremer Nybegynder
17. december 2009 - 19:47 #12
Bare skriv et "svar" - de få point... -
Avatar billede jakobdo Ekspert
17. december 2009 - 20:46 #13
Svar!
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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