Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „kontaktformular“

Mexx77

Noch nicht viel geschrieben

Hallo, ich habe ein Kontaktformular welches die Datei mailer.php per "action" anspricht. Diese soll dann die daten übermitteln. Bei dem check, ob der besucher alles ausgefüllt hat, habe ich ein problem. Ich kriege die Meldung "Vergewissern Sie sich, dass alles ausgefüllt ist!" auch wenn ich in alle drei Felder (Name, E-Mail, Message) was eingetragen habe.

Könnt ihr mir helfen?

HTML:
Code:
<form id="Kontaktformular" name="Kontaktformular" method="post" action="php/mailer.php">
<input class="text_input" type="text" name="name">
<input class="text_input" type="text" name="email">
<textarea class="text_input" name="message"></textarea>
<input id="submitbotton" type="submit" value="senden" name="submit">

PHP (mailer.php):
Code:
<?php
	
	if(isset($_POST['submit'])) {

		$to = "max@web.de";
		$subject = "Kontaktaufnahme";
		$name_field = $_POST['name'];
		$mail_field = $_POST['email'];
		$message = $_POST['message'];
 
		$body = "Eine neue Nachricht wurde uber das Kontaktformular ubermittel:\n \n Name des Absenders: $name_field\n E-Mail-Adresse von $name_field: $email_field\n \n Nachricht:\n $message";

		if (empty($name_field) OR empty($email_field) OR empty($message)) {
			echo '<script language="javascript">confirm("Vergewissern Sie sich, dass alles ausgefüllt ist!")</script>';
			echo '<script language="javascript">window.location = "http://www.***********.de/kontakt.html"</script>';
		}
		else {
			mail($to, $subject, $body, "From:info@web.de<Kontaktbereich>" );
			echo "Das ausgefüllte Formular wurde an $to! gesendet. Vielen Dank für Ihre Kontaktaufnahme";
		}
 
		
	} 
		
	else {

		echo "Diese Datei darf nicht direkt aufgerufen werden";
	}
?>


Bitte helft mir!
 

Mexx77

Noch nicht viel geschrieben

AW: kontaktformular

Ich habe das jetzt noch mal überarbeitet. Aber die Email Validierung geht nicht. Selbst wenn eine korrekte email angegeben wurde. Kann mir jemand helfen?

Code:
<?php
	
	if(isset($_POST['submit'])) {

		$to = "max@web.de";
		$subject = "Kontaktaufnahme";
		$name_field = $_POST['name'];
		$mail_field = $_POST['email'];
		$message = $_POST['message'];
 
		$body = "Eine neue Nachricht wurde über das Kontaktformular übermittel:\n \n Name des Absenders: $name_field\n E-Mail-Adresse von $name_field: $mail_field\n \n $name_field's Nachricht:\n $message";
		
		function checkEmail($mail_field) {
			$result = TRUE;

			if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $mail_field)) {
				$result = FALSE;
			}
			return $result;
		}
		
		if (empty($name_field)) {
			echo '<script language="javascript">confirm("Bitte geben Sie Ihren Namen an!")</script>';
			echo '<script language="javascript">window.location = "http://www.*******/kontakt.html"</script>';
		}
		else if( checkEmail($result) == FALSE) {
   			echo '<script language="javascript">confirm("Bitte geben Sie eine gültige E-Mail-Adresse an!")</script>';
			echo '<script language="javascript">window.location = "http://www.*******/kontakt.html"</script>';
		} 
	
		else if (empty($message)) {
			echo '<script language="javascript">confirm("Bitte tragen Sie im Feld "Nachricht" Ihre Mitteilung ein!")</script>';
			echo '<script language="javascript">window.location = "http://www.*******/kontakt.html"</script>';
		}	
		else {
			mail($to, $subject, $body, "From:info@web.de<Kontaktbereich>" );
			echo '<script language="javascript">confirm("Das ausgefüllte Formular wurde an uns gesendet. Vielen Dank für Ihre Kontaktaufnahme")</script>';
			echo '<script language="javascript">window.location = "http://www.*******/kontakt.html"</script>';
		}
 
		
	} 
		
	else {

		echo "Diese Datei darf nicht direkt aufgerufen werden";
	}
?>
 

CIX88

Aktives Mitglied

AW: kontaktformular

Wenn du PHP5 hast, geht es auch einfacher:
PHP:
if( @filter_var($mail_field, FILTER_VALIDATE_EMAIL) === FALSE) {
     echo $mail_field.' ist nicht korrekt';
} else {
     echo $mail_field.' ist korrekt';
}
Ansonsten ereg() und eregi() vergessen und preg_match() benutzen.
 

Mexx77

Noch nicht viel geschrieben

AW: kontaktformular

Wenn du PHP5 hast, geht es auch einfacher:
PHP:
if( @filter_var($mail_field, FILTER_VALIDATE_EMAIL) === FALSE) {
     echo $mail_field.' ist nicht korrekt';
} else {
     echo $mail_field.' ist korrekt';
}
Ansonsten ereg() und eregi() vergessen und preg_match() benutzen.



SUPER!!!!!!!! Vielen Dank! Mit diesem Tipp zu PHP5 habe ich's hinbekommen.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
175.155
Beiträge
2.581.854
Mitglieder
67.221
Neuestes Mitglied
opaklaus
Oben