• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Kontakt Formular, was mach ich Falsch

Status
Für weitere Antworten geschlossen.

Schnuff

Neues Mitglied
PHP:
<form method="post">
<?
$N=array();
$OK=$_POST['OK'];
$N[0]=$_POST['Name'];
$Neu=$_POST['Neu'];
$N[1]=$_POST['Email'];
$N[2]=$_POST['Text'];
if($Neu!="1" && empty($N[0]) && empty($N[2]) && empty($OK)){
    unset($_POST['OK']);
    unset($_POST['Name']);
    $nz=chr(13).chr(10);
    echo"E-Mail verschickt!

";
    $Mai ="Von: $N[0]$nz";
    $Mai.="Gesendet um: ".date("G:i")." am ".date("j,n,Y")."$nz";
    $Mai.="Email: $N[1]$nz";
    $Mai.="Text:$nz $N[2]";
    mail("[email protected]","email von Website",$Mai);
    $Neu="1";
}elseif($OK!="" && $Neu!="1"){
    echo"die E-Mail konnte nicht verschickt werden, Prüfen sie Bitte ob sie
<u>Namen und Kommentar</u> richtig angegeben haben! 

";
}else echo"sie dürfen nur eine E-Mail verschicken";
?>
<input name="Neu" value="<?=$Neu?>" type="hidden">

<table border="0">
<tr valign="Top"><td>[b]Name:			[/b]</td><td><input size="39" name="name" value="<?=$N[0] ?>"></td></tr>
<tr valign="Top"><td>[b]E-Mail:			[/b]</td><td><input size="39" name="Email" value="<?=$N[1] ?>"></td></tr>
<tr valign="Top"><td>[b]Kommentar:[/b]</td><td><textarea name="Text" rows="10" cols="30"><?=$N[3] ?></textarea></td></tr>
<tr valign="Top"><td></td><td><input name="OK" type="submit" value="Abschicken">	</td></tr>
</table>

</form>

ich habe keine Ahnung, ich freue mich über hilfe!
 
Zuletzt bearbeitet:
Werbung:
Man soll eine genau fragestellung abgeben und nicht einfach sagen macht mal :|

Was funktioniert nicht? Gibt es Fehlermeldungen?
 
nein, wenn ich auf den Link zum Kontackt Formular Klicke, steht sofort da, er habe die E-Mail schon verschick.
in den E-Mails ist aber nichts angegeben(Name, Komentar)
 
Werbung:
mach mal hieraus:
Code:
if($Neu!="1" && empty($N[0]) && empty($N[2]) && empty($OK))

das hier:
Code:
if($OK && $Neu!="1" && empty($N[0]) && empty($N[2]) && empty($OK))
 
dann kommt gleich: "sie dürfen nur eine E-Mail verschicken"
und wenn man abschickt kommt: "die E-Mail konnte nicht verschickt werden, Prüfen sie Bitte ob sie
<u>Namen und Kommentar</u> richtig angegeben haben!

"
 
irgendwie sind deine if bedingungen leicht 'seltsam'...
wenn die felder 'name' und 'email' leer sind, soll die email verschickt werden?! Óò
[vielleicht mal mit nem '!' negieren...]

desweiteren übergibst du von deinem submitbutton OK den wert 'abschicken'.
das heisst, deine variable $ok wird nie leer sein.
von daher wird auch nie eine anweisung ausgeführt werden wenn die bedingung dafür empty($ok); ist *g

warum du diese bedingung in der if-abfrage stehn hast, versteh ich sowieso nicht.
 
Werbung:
das problem ist, dass du das OK aus dem formular nimmst und dort hat der button OK nunmal den wert 'abschicken'.

du hast in der ersten if-abfrage empty($OK) stehen.
das heisst, in dem falle muss $OK bei dir leer sein, damit die bedingung erfüllt ist und dein code auch ausgeführt wird...

wenn du das formular zuerst ohne den php-code einbinden würdest, und es später im php-code einfach inkludierst bei auftretenden fehleingaben, wäre das ganze einfacher.
dann wird der code nämlich sowieso nur ausgeführt, wenn man den button drückt.

mhm, ausserdem fehlt dir das action attribut im formular tag Óò
 
Hallo,

Code:
<?=$Neu?>
Und was soll das hier bedeuten, beziehungsweise bewirken?

Wenn ich mir dein Script so anschaue, kann ich dir eigentlich nur den Rat geben, PHP richtig zu lernen, sprich, dich damit mal richtig auseinanderzusetzen, denn dein Script ist reines "Wirrwarr", welches fehlerhaft ist und man nicht durchblickt.


Liebe Grüße,
L.T.M
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben