/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Mailformular med php
Fra : Erik Ginnerskov


Dato : 16-09-04 08:13

Hej NG
Jeg har siddet og bøvlet med et mar php-mailformularer, som jeg ikke kan få
til at fungere - der bliver ikke afsendt nogen mail og der bliver heller
ikke returneret nogen fejlmeddelelse.

Scriptene er vist i kodebokse på siderne:

http://www.hjemmesideskolen.dk/scripts/phpmail.php
http://www.hjemmesideskolen.dk/scripts/contactus.php

Hvad har jeg gjort forkert og hvordan får jeg det til at virke?

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



 
 
Lars Olesen (16-09-2004)
Kommentar
Fra : Lars Olesen


Dato : 16-09-04 08:34

Erik Ginnerskov wrote:

> http://www.hjemmesideskolen.dk/scripts/phpmail.php

Det er ikke god kodeskik at få fat i variabler blot med fx $submit. I
stedet bør man benytte det globale array $_POST['submit'];

Så bør du i øvrigt lave et tjek på, om php selv tilføjer addslashes,
eller du skal gøre det manuelt, og du bør lave en strip_tags() på
formularinput.

Nogle ganske få og hurtige råd her:

<http://www.legestue.net/websites/larsolesen/254/>

Scriptet bør være (ikke testet):

if (!empty($_POST['submit')) {
if(!empty($_POST['name']) && !empty($_POST['subject']) &&
!empty($_POST['email']) && !empty($_POST['message']) ) {
// du bør i øvrigt lave et tjek på e-mailen om den opfylder
// de mest almindelige konventioner
if(mail("navn@domæne.dk", $subject, $message, "From: " . $name . "
<" .$email.">")) {
echo '<p>Tak for din henvendelse. Jeg vender tilbage så hurtigt
som muligt.</p>';
}
else {
echo '<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!';
}
}
else
{
echo "<p>Alle felter skal udfyldes!</p>";
}
}

--
Lars Olesen
Vejle Idrætshøjskole <http://www.vih.dk>
Valider dine sider
<http://diveintomark.org/archives/2003/05/05/why_we_wont_help_you>
Søg i nyhedsgrupperne
<http://http://www.google.dk/grphp?tab=wg&q=&ie=UTF-8&oe=UTF-8&hl=da&meta=>

Dan Storm (16-09-2004)
Kommentar
Fra : Dan Storm


Dato : 16-09-04 17:44

jeg ville mene det skulle være således:
<?php

   if(isset($_POST['submit'])) {
      if(!empty($_POST['name']) && !empty($_POST['subject']) &&
!empty($_POST['email']) && !empty($_POST['message'])) {
         if(@mail("navn@domæne.dk", strip_tags($_POST['subject']),
strip_tags($_POST['message']), "From: ".$_POST['name']."
<".$_POST['email'].">")) {
            echo '<p>Tak for din henvendelse. Jeg vender tilbage så hurtigt som
muligt.</p>';
         }else{
            echo '<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!';
         }
      }else{
         echo '<p>Alle felter skal udfyldes!</p>';
      }
   }

?>

--
Dan Storm

http://err0r.dk
storm@err0r.dk

PGP Public key på http://err0r.dk/pubring.pkr

>>> husk på; en ekspert er en person der har begået alle fejl mulige
inden for et bestemt område




Erik Ginnerskov (16-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 16-09-04 19:54

Dan Storm wrote:
> jeg ville mene det skulle være således:
> <?php
>
> if(isset($_POST['submit'])) {
> if(!empty($_POST['name']) && !empty($_POST['subject']) &&
> !empty($_POST['email']) && !empty($_POST['message'])) {
> if(@mail("navn@domæne.dk", strip_tags($_POST['subject']),
> strip_tags($_POST['message']), "From: ".$_POST['name']."
> <".$_POST['email'].">")) {
> echo '<p>Tak for din henvendelse. Jeg vender tilbage så hurtigt som
> muligt.</p>';
> }else{
> echo '<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!';
> }
> }else{
> echo '<p>Alle felter skal udfyldes!</p>';
> }
> }

En foreløbig tak til Lars og Dan. Jeg prøver det.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Erik Ginnerskov (16-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 16-09-04 20:13

Dan Storm wrote:
> jeg ville mene det skulle være således:
> <?php
>
[klip]
> }else{
> echo '<p>Alle felter skal udfyldes!</p>';
> }
> }

Det virker bare perfekt. Jeg bøjer mig i støvet. Tak for hjælpen.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kim (19-09-2004)
Kommentar
Fra : Kim


Dato : 19-09-04 14:15

Hvor i koden er den Mail adresse mailen bliver sendt til?

Kim
"Dan Storm" <shadyz@_removethis_err0r.dk> skrev i en meddelelse
news:4149c2d4$0$245$edfadb0f@dread12.news.tele.dk...
> jeg ville mene det skulle være således:
> <?php
>
> if(isset($_POST['submit'])) {
> if(!empty($_POST['name']) && !empty($_POST['subject']) &&
> !empty($_POST['email']) && !empty($_POST['message'])) {
> if(@mail("navn@domæne.dk", strip_tags($_POST['subject']),
> strip_tags($_POST['message']), "From: ".$_POST['name']."
> <".$_POST['email'].">")) {
> echo '<p>Tak for din henvendelse. Jeg vender tilbage så hurtigt som
> muligt.</p>';
> }else{
> echo '<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!';
> }
> }else{
> echo '<p>Alle felter skal udfyldes!</p>';
> }
> }
>
> ?>
>
> --
> Dan Storm
>
> http://err0r.dk
> storm@err0r.dk
>
> PGP Public key på http://err0r.dk/pubring.pkr
>
> >>> husk på; en ekspert er en person der har begået alle fejl mulige
> inden for et bestemt område
>
>
>



Erik Ginnerskov (19-09-2004)
Kommentar
Fra : Erik Ginnerskov


Dato : 19-09-04 22:10

Kim wrote:
> Hvor i koden er den Mail adresse mailen bliver sendt til?

<?php
if(isset($_POST['submit'])) {
if(!empty($_POST['name']) && !empty($_POST['subject']) &&
!empty($_POST['email']) && !empty($_POST['message'])) {
if(@mail("navn@domæne.dk", strip_tags($_POST['subject']),
strip_tags($_POST['message']), "From: ".$_POST['name']."
<".$_POST['email'].">")) {
echo '<p>Tak for din henvendelse. Jeg vender tilbage så hurtigt som
muligt.</p>';
}else{
echo '<p>E-mailen blev ikke sendt. Der skete en fejl. Prøv igen!';
}
}else{
echo '<p>Alle felter skal udfyldes!</p>';
}
}
?>

Her: if(@mail("navn@domæne.dk", strip_....

Udskift navn@domæne.dk med den email-adresse, mailen skal sendes til.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://html-faq.dk
http://ginnerskov.frac.dk



Kim (19-09-2004)
Kommentar
Fra : Kim


Dato : 19-09-04 22:30


"Erik Ginnerskov" <erik@donotspammmeplease.invalid> skrev i en meddelelse
news:414df574$0$39263$14726298@news.sunsite.dk...
> Kim wrote:
> > Hvor i koden er den Mail adresse mailen bliver sendt til?
>

>
> Her: if(@mail("navn@domæne.dk", strip_....
>
> Udskift navn@domæne.dk med den email-adresse, mailen skal sendes til.
>
Jeg takkker.

Mvh. Kim



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste