Simpelt mailformular - HJÆLP! :P

Tags:    php

<?php
$navn = $_POST['navn'];
$besked = $_POST['besked'];
$mail = $_POST['mail'];
$emne = $_POST['emne'];

(empty($navn) || empty($besked) || empty($mail || empty($emne)) // Hvis felter ikke er udfyldt
{
echo "Alle felter skal udfyldes <br><b><a href='html.html' title='Tilbage'>Jeg vil tilbage!<a></b>";
}

else // Ellers send
{
if(ereg("@", $mail) // Er mailen gyldig?
{
$sendto = "Mail@mmmmm.com"; //Den mail der skal have beskeden
$subject = $emne;
$besked = "Besked: \n
Navn: " . $_POST['navn']. " \n
E-mail: " . $_POST['mail'] . " \n
Besked: " . $_POST['besked'];

}
else
{
echo "Din mail var ikke korrekt, prøv igen <br><b><a href='html.html' title='Tilbage'>Jeg vil tilbage!<a></b>";
}
if(mail($sendto, $subject, $besked, "Mailen er fra: $mail\\r\\n" . "Besvar: $mail\\r\\n"));
{
echo "Emailen er nu sendt!";
}
else
{
echo "Der opstod et problem, prøv igen";
}
}
}
?>



Først vil jeg kraftigt råde dig til at lave indryk i din kode. Det gør den langt nemmere at debugge.

Derudover burde du skrive hvad din fejl er. Umidelbart mangler du hvertfald et "if" foran parantesen på linje 7.

Fold kodeboks ind/udKode 




Har kigget koden igennem lidt grundigere, og der var en del fejl. Bl.a. et semikolon efter en if-sætning som så afslutter din if der. Har også taget mig friheden til at strukturere din kode lidt. Kan godt ske at jeg har overset nogle fejl, har ikke kigget funktionaliteten igennem, blot syntax fejl osv.

Fold kodeboks ind/udKode 




Det skal også siges at ereg() udgår i PHP 5.3.0
Så brug hellere preg funktionerne...



t