Avatar billede sijmonj Nybegynder
28. maj 2007 - 13:57 Der er 8 kommentarer og
1 løsning

Mail system i PHP

Hej jeg har lavet et script i PHP så folk kan sende en email til mig fra min hjemmeside men jeg kan ik få den til at udskrive den person's email som skriver til mig
den skriver bare "H-Sphere Httpd Daemon <httpd@ws7.surf-town.net>" :S
Her er min kode:

-------------
<?php
if (isset($_POST['navn']) && isset($_POST['email']) && isset($_POST['emne']) && isset($_POST['besked']))
{
    if (empty($_POST['navn']))
    {
        echo "Du skal indtaste dit navn";
    }
    elseif (empty($_POST['email']))
    {
        echo "Du skal indtaste en email";
    }
    elseif (empty($_POST['emne']))
    {
        echo "Du skal indtaste et emne";
    }
    elseif (empty($_POST['besked']))
    {
        echo "Du skal indtaste en besked";
    }
    else
    {
        $modtager = "sijmon2003@hotmail.com";
        $emne = $_POST[emne];
        $besked = "Navn: " . $_POST['navn']. "\n Besked: " . $_POST['besked'];
        $header = $_POST[email];

        mail($modtager, $emne, $besked, $header);
        echo "Emailen er nu sendt!";
    }
}
?>


<form action="mail.php" method="post">
  Alle felter med <font color="#006699">*</font> skal udfyldes
  <br />
    <br />
    <font color="#006699">*</font> Navn: <br>
    <input type="text" name="navn" style="border: 1px solid #006699; width: 200px;">
    <br>

    <font color="#006699">*</font> Email: <br>
    <input type="text" name="email" style="border: 1px solid #006699; width: 200px;">
    <br>

    <font color="#006699">*</font> Emne: <br>
    <input type="text" name="emne" style="border: 1px solid #006699; width: 200px;">
    <br />
    <br>

    <font color="#006699">*</font> Besked: <br>
    <textarea name="besked" style="border: 1px solid #006699; width: 200px; height: 200px;"></textarea>
    <br>

    <input type="submit" value="Send mail">
</form>
----------------
Avatar billede jakobdo Ekspert
28. maj 2007 - 14:39 #1
Prøv at ret $header til:

$header = 'From: ' . $_POST['email'] . "\r\n" .
    'Reply-To: ' . $_POST['email'] . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

Du bør dog sikre dig der ikke er \r eller \n i emailen, da det ellers kan udnyttes til at spamme.
Avatar billede sijmonj Nybegynder
28. maj 2007 - 14:48 #2
Nice :D Tak nu virker det men den skriver bare

Fra:  <test@test.dk>
Svar til:  test@test.dk

kan jeg ik tage det der "svar til" væk ?
og kan du ik fortælle hva den kode du skrev gør :)?
Avatar billede jakobdo Ekspert
28. maj 2007 - 15:06 #3
Koden gør det at den sætte nogle headers ind i emailen.
Du kan læse mere her: http://www.php.net/manual/en/function.mail.php

Det med svar til, hvor ser du det? (for det er ikke at finde i din kode nogen steder)
Avatar billede jakobdo Ekspert
28. maj 2007 - 15:06 #4
Du får også et svar!
Avatar billede sijmonj Nybegynder
28. maj 2007 - 15:12 #5
det står i min indbakke når man har trykket på emailen og man læser den
Avatar billede jakobdo Ekspert
28. maj 2007 - 15:26 #6
Det må være dit email program eller webmail som gør det!
For det bliver ikke tilføjet med det kode du har vist herover.
Avatar billede sijmonj Nybegynder
28. maj 2007 - 15:32 #7
Hmm jah måske bare mærkelig den begyndte på det efter jeg indsatte den kode
Avatar billede jakobdo Ekspert
28. maj 2007 - 15:42 #8
Måske der ikke tidligere var en reply to:
Avatar billede jakobdo Ekspert
18. oktober 2007 - 19:46 #9
Takker for point.
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