kosovafan
Erfahrenes Mitglied
Hallo,
ich habe mir einmal ein Formular gebaut, doch irgendwie funktioniert das nicht. Es gibt keinerlei Fehlermeldung in der log, wenn ich aber das Formular ausfülle und absende wird es nur geleert. Ich habe jetzt mehre Varianten durch, immer mit dem gleichen Resultat. Könnt Ihr mir einen Tipp geben wo ich den Fehler mache?
Das Formular:
Die Ausgabe von var_dump($_POST); liefert das gleiche wie bei den einfachen Formular was funktioniert.
Vielen Dank!
Silvio
ich habe mir einmal ein Formular gebaut, doch irgendwie funktioniert das nicht. Es gibt keinerlei Fehlermeldung in der log, wenn ich aber das Formular ausfülle und absende wird es nur geleert. Ich habe jetzt mehre Varianten durch, immer mit dem gleichen Resultat. Könnt Ihr mir einen Tipp geben wo ich den Fehler mache?
PHP:
<?php
//error_reporting(E_ALL);
//ini_set("display_errors", 1);
//var_dump($_POST);
if (isset($_POST['senden'])) {
$fehler = "";
$name = "";
$email = "";
$nachricht = "";
if (isset($_POST['name'])) {
if (htmlspecialchars(trim($_POST['name']) != '')) {
$name = $_POST['name'];
}else{
$fehler = $fehler . "<h1>Bitte geben Sie Ihren Namen ein!</h1>";
}
}
if (isset($_POST['email'])) {
if (htmlspecialchars(trim($_POST['email']) != '')) {
$email = $_POST['email'];
}else{
$fehler = $fehler . "<h1>Bitte geben Sie Ihre Email Adresse ein!</h1>";
}
}
if (isset($_POST['nachricht'])) {
if (htmlspecialchars(trim($_POST['nachricht']) != '')) {
$nachricht = $_POST['nachricht'];
}else{
$fehler = $fehler . "<h1>Ohne Nachricht benötigen Sie kein Formular!</h1>";
}
}
if ($fehler == '') {
@mail("siefke@email.de", "Kontakt", "$nachricht", "FROM: $email");
echo "<h1>Vielen Dank für Ihre Nachricht!</h1>";
exit();
} else {
echo "<h1>$fehler</h1>";
}
}
?>
Das Formular:
HTML:
<form id="kontaktformular" action="" method="post">
<fieldset>
<label>Name</label>
<input class="text" type="text" name="name" value="<?php if (isset ($_POST['name'])) {echo $name;}?>" />
<label>Ihre Email</label>
<input class="text" type="text" name="email" value="<?php if (isset ($_POST['name'])) {echo $email;}?>" />
<label>Ihre Nachricht</label>
<textarea class="textarea" name="nachricht" rows="6" cols="20" ><?php if (isset ($_POST['name'])) {echo $nachricht;}?></textarea>
<input type="hidden" name="date" id="date" value="<?php time() ?>" />
<input name="senden" type="submit" value="Absenden" class="submit" />
</fieldset>
</form>
Die Ausgabe von var_dump($_POST); liefert das gleiche wie bei den einfachen Formular was funktioniert.
Code:
array(4) { ["name"]=> string(13) "Silvio Siefke" ["email"]=> string(13) "siefke@ich.ms"
["nachricht"]=> string(16) "Wie geht es dir?" ["senden"]=> string(8) "Absenden" }
Vielen Dank!
Silvio
Zuletzt bearbeitet: