Avatar billede aske2 Nybegynder
19. februar 2006 - 17:50 Der er 5 kommentarer og
1 løsning

Problem med afsendelse af mail fra form

Hej eksperter

Jeg har problemer med at få afsendt en mail ved udfyldelse af formular.

Min formular ser sådan ud:

<form method="post" action="afsendt.php" name="tilmelding" enctype="text/plain">
<table class="alm_tekst" width="80%">
    <tr>
        <td>Jeg ønsker at deltage i</td>
        <td>uge 26 <input type="radio" name="uge" value="26"> uge 27<input type="radio" name="uge" value="27"></td>
    </tr>
    <tr>
    <td width="50%">Navn:</td>
    <td width="50%"><input name="navn" size="40" style="background-color:#BFE2BA;"/></td>
  </tr>
    <tr>
    <td width="50%">Vej/nr.:</td>
    <td width="50%"><input name="adresse" size="40" style="background-color:#BFE2BA;"/></td>
  </tr>
  <tr>
    <td width="50%">Postnr./By:</td>
    <td width="50%"><input type="text" size="40" name="adresse2" style="background-color:#BFE2BA;"/></td>
  </tr>
  <tr>
    <td width="50%">Telefon:</td>
    <td width="50%"><input type="text" size="10" name="telefon" style="background-color:#BFE2BA;"/></td>
  </tr>
    <tr>
    <td width="50%">Mobil:</td>
    <td width="50%"><input type="text" size="10" name="mobil" style="background-color:#BFE2BA;"/></td>
  </tr>
    <tr>
        <td width="50%">Mail adresse:</td>
        <td width="50%"><input type="text" size="20" name="mail" style="background-color:#BFE2BA";/></td>
    </tr>
    <tr>
        <td width="50%">Alder:</td>
        <td width="50%"><input type="text" name="alder" size="2" style="background-color:#BFE2BA;"/></td>
    </tr>
  <tr>
    <td width="50%">1. rate på 1.250 kr. er </td>
    <td width="50%">betalt kontant<input type="radio" name="betaling" value="Betalt kontant"/>&nbsp; indsat i bank<input
        type="radio" name="betaling" value="Indsat i bank"/></td>
  </tr>
  <tr>
    <td colspan="2" align="right"><br /><br /><input type="submit" name="send" value="Tilmeld"
        style="background-color:#BBBA82;"/></td>
  </tr>   
    </form>       

Og filen afsendt.php sådan:

<?php
if ($_POST['send']) {
    $uge = $_POST['uge'];
        $navn = $_POST['navn'];
        $adresse = $_POST['adresse'];
    $adresse2 = $_POST['adresse2'];
        $telefon = $_POST['telefon'];
    $mobil = $_POST['mobil'];
        $alder = $_POST['alder'];
        $betaling = $_POST['betaling'];
    $mailtil = "aske2@tiscali.dk";
    $mailfra = "$mail";
    mail($mailtil,"Kontakt fra hjemmeside","$navn - $mail","From: $mailfra");
    echo "<b>Din besked er sendt!</b>";
}
?>


Det skal siges, at afsendt.php er direkte copy paste fra andet spørgsmål her på Eksperten, og da virkede det. Det fungerer bare ikke for mig, men hvorfor gør det ikke det? Når jeg har udfyldt formularen, får jeg bare en blank side, og ingen mail bliver sendt. Hvad har jeg gjort galt her? Det skal nævnes, at jeg IKKE er PHP haj, og nu er det ydermere næsten 2 år siden sidst, så det jeg kunne engang, er blevet noget støvet :-(

Jeg håber, I kan hjælpe mig videre her.
Avatar billede johan.o Nybegynder
20. februar 2006 - 11:48 #1
Der er to ting der springer mig i øjnene :

1.: Du mangler at lukke din tabel. Indsæt </table> mellem </tr></form>.
2.: I dit form tag har du skrevet enctype="text/plain" det skal du bare fjerne. Dit form tag kan nøjes med dette : <form method="post" action="afsendt.php">

Du bør dog derudover lave lidt validering af det input der bliver lavet til din form, men det gør du måske også :)

Mvh. Johan
Avatar billede aske2 Nybegynder
20. februar 2006 - 13:03 #2
Ja jeg kan da godt se, at jeg mangler en afslutning på min table - pinligt :-(
Jeg er desværre på arbejde nu, men vil ændre de 2 ting, du foreslår, så snart jeg kommer hjem. Indtil videre skal du i hvert fald have tak :-) Jeg troede aldrig, der var nogen, der ville svare mig. Tænkte at det nok var for dumt et spørgsmål ;-)
Avatar billede aske2 Nybegynder
20. februar 2006 - 19:17 #3
Nu får jeg så følgende fejlmeddelelse:

Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\programmer\apache group\apache\htdocs\afsendt.php on line 13
Din besked er sendt!

Men hvad er der galt? Jeg har følgende i php.ini:

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
Avatar billede johan.o Nybegynder
20. februar 2006 - 22:36 #4
I php.ini skal SMTP være den SMTP adresse du bruger til at sende post ud. Hvis du bruger outlook ekspress kan du finde den under Funktioner--> Konti--> Post--> Egenskaber--> Servere--> Udgående post.

Hvis du bruger TDC er den vist : smtp.mail.dk

Mvh. Johan
Avatar billede aske2 Nybegynder
07. november 2007 - 07:30 #5
johan.o>> Beklager at der er gået så lang tid, men nu er jeg altså ved at rydde op og uddele de point, jeg skylder, så kan du ikke lægge et svar?
Avatar billede johan.o Nybegynder
07. november 2007 - 10:26 #6
God ide med lidt oprydning :)

Svar kommer her.

Mvh. Johan
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