Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
|
23.08.16, 17:38
|
#1
|
Anfänger
Registriert seit: Jul 2010
Beiträge: 6
Bedankt: 12
|
Problem mit PHP Code
Hallo,
ich hab auf meiner Website ein Kontakt Formular mit HTML erstellt. Das ganze was dort eingegeben wird, wird an eine php Datei weitergegeben. Die Überprüft dann mithilfe einer if Abfrage ob die Felder alle befüllt sind oder nicht. Wenn sie befüllt sind soll die E-Mail verschickt werden, wenn nicht kommt eine Fehlermeldung.
Mein Problem: Auch wenn die Felder befüllt sind kommt die Fehlermeldung...
Die HTML-Seite:
<p>
</p><p>
</p><form method="post" action="kontakt.php">
<p><label for="vorname">Name:</label> <br>
<input id="name" name="name"> <br>
<label for="email">Ihre E-Mail-Adresse:</label><br>
<input id="email" name="email"> <br>
<label id="betreff" for="betreff">Betreff:</label><br>
<input id="betreff" name="betreff"> <br>
<label for="nachricht">Ihre Nachricht:</label><br>
<textarea id="nachricht" style="HEIGHT: 106px; WIDTH: 291px" rows="1" cols="1" name="nachricht"></textarea> <br>
<input id="submit" type="submit" value="Abschicken" name="submit"><br> </p></form>
Die kontakt.php:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
$an = 'hier steht meine Mail adresse';
$betreff = "Kontaktformularnachricht | $betreff | $name ";
if ((!empty($name))&&(!empty($email))&&(!empty($betre ff))&&(!empty($nachricht))) {
mail($an, $betreff, $nachricht, 'From:' . $email);
echo 'Ihre Kontaktnachricht wurde zugestellt. Sie werden bald möglichst eine Antwort erhalten. <a href="index.html">Zurück</a>';
}
else {
echo 'Sie müssen alle Felder ausfüllen. <a href="kontakt.html">Zurück</a>';
}
?>
Was mache ich falsch ?
|
|
|
23.08.16, 21:43
|
#2
|
Stammi
Registriert seit: Jan 2010
Beiträge: 1.145
Bedankt: 1.445
|
Ist das Leerzeichen bei "betreff" in der Zeile
if ((!empty($name))&&(!empty($email))&&(!empty($betre ff))&&(!empty($nachricht))) {
beabsichtigt?
__________________
Irgendwie komisch, dass das was wir gemeinhin als "unmenschlich" bezeichnen, ausschließlich Verhalten von Menschen beschreibt.
|
|
|
26.08.16, 13:44
|
#3
|
Anfänger
Registriert seit: Sep 2009
Beiträge: 3
Bedankt: 0
|
Moin,
du überprüfst die Felder ja nur auf Inhalt, dies kann man auch ohne PHP tun. So zum Beispiel: <input type="text" name="usrname" required>
Das required ist hier die Lösung.
Gruß
|
|
|
30.08.16, 13:55
|
#4
|
Anfänger
Registriert seit: Apr 2010
Beiträge: 32
Bedankt: 20
|
Zitat:
Zitat von bommel77
dies kann man auch ohne PHP tun. So zum Beispiel: <input type="text" name="usrname" required>
|
Kann man machen, sollte man aber nicht. Manche Browser unterstützen das required Attribut nicht und ansonsten kann man z.B. in Chrome auch mit den Browser-Tools das required aus dem DOM entfernen und das Formular trotzdem abschicken.
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:44 Uhr.
().
|