Avatar billede tberg Nybegynder
24. oktober 2007 - 04:18

Problem med Formmail

Hej eksperter,

Jeg har oprettet to formmails på min hjemmeside. De sender begge det indtastede til min email som ønsket og kommer med korrekt tilbagemelding ('emailen er sendt'). Men når jeg så reloader siden og benytter samme formmails påny modtager jeg ingenting i min email tiltrods for at jeg efter igen at have trykket 'send' får samme korrekte tilbagemelding. Jeg er nødt til at gå op i min Firefox browser og trykke 'Clear Private Data' under 'Tools' før formmailsne igen fungerer som de skal. Hvordan kan det mon være? Det skulle helst ikke være nødvendigt.

Her følger koden til mine to formmails:

<?php
$to = "admin@blacksundog.dk";
$subject = "Contact Us";
$message = $_REQUEST['message'] ;
$headers = "From: Thomas";
$sent = mail($to, $subject, $message, $headers) ;
if($sent)
{print "Your mail was sent successfully"; }
else
{print "We encountered an error sending your mail"; }
?>

<?php

//Tjekker om brugeren kom fra registration.html

if(!isset($_POST['navn']))
{
    header("Location: registration.html"); //Hvis brugeren ikke kom fra kontakt.htm, sender vi ham derhen.
}

else
{ // Hvis brugeren kom fra kontakt.htm, så fortsætter vi.

    //Henter data fra formular
    $navn = $_POST['navn'];
    $mail = $_POST['mail'];
    $emne = $_POST['emne'];
    $besked = $_POST['besked'];
   
    if(empty($navn) || empty($mail) || empty($emne) || empty($besked))
    { //Hvis en af variablerne er tomme, kommer brugeren ikke videre.
   
        echo "Alle felter skal udfyldes. <a href='registration.html' title='Klik her for at komme tilbage'>Klik her for at komme tilbage til formularen</a>";

    }

    else
    { //Hvis der var noget i alle variabler går vi videre til næste tjek.

        if(ereg("^.+@.+\..+$", $mail)) { //Hvis brugerens e-mail er gyldig fortsætter vi.
       
        //Nu skal vi til at sende e-mailen.
        //Vi laver lige et par variabler mere
        $sendto = "admin@blacksundog.dk"; //Den adresse som mailen skal sendes til
       
        //Vi laver en variabel, som indeholder alt det, som skal stå i mailen.
        $msg = "Besked fra ".$navn."\n";
        $msg .= "Afsenderens e-mail: ".$mail."\n";
        $msg .= "Password: ".$emne."\n";
        $msg .= $navn."'s besked er:\n".$besked."\n";
       
        $subject = "Kontakt besked: ".$emne;
       
        //Mailen afsendes
        if(mail($sendto, $subject, $msg, "From: $mail\r\n" . "Reply-To: $mail\r\n"))
        {
       
        echo "Mailen blev sendt uden problemer";
       
        }
        else
        {
        echo "Der opstod en fejl. Prøv igen. <a href='registration.html' title='Klik her for at komme tilbage'>Klik her for at komme tilbage til formularen</a>";

        }       
    }

        else
        { //Hvis e-mail adressen ikke har et @ kommer vi med endnu en fejl

        echo "Ugyldig e-mail adresse. <a href='registration.html' title='Klik her for at komme tilbage'>Klik her for at komme tilbage til formularen</a>";

        }

}
}
?>
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