Formularprüfung

Bubumann

Mitglied
Hallo liebe Leute,

ich habe bereits viel gesucht und viel ausprobiert. Leider klappt alles nicht.

Ich hab eine Formular incl. DB-Verbindung und möchte überprüfen lassen, ob einige Felder (u.a. eMail) ausgefüllt sind.

Könnt Ihr Euch bitte das Script anschauen und mir helfen?

Vielen Dank
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
	<title>Herzlich Willkommen </title>
	<LINK rel="stylesheet" href="../../apama.css">
</head>
<BODY bgcolor="#000066">
<?PHP

if ($button==" Absenden ") {
include ("dbverbindung.php");
mysql_query("INSERT INTO 
gastdaten(vorname,name,land,strasse,postleitzahl,ort,telefon,telefax,email,kategorie,von,bis,erwachsene,kinderunter12,kinderueber12,newsletter, bemerkungen)
VALUES('$vorname','$name','$land','$strasse','$postleitzahl','$ort','$telefon','$telefax','$email','$kategorie','$von','$bis','$erwachsene','$kinderunter12','$kinderueber12','$newsletter','$bemerkungen')");

$mail_empfaenger="Frank@Wendorf.net, h.scholz@apartamentos-mallorca.de";
$mail_absender=$mailaddi;
$betreff="Buchungsanfrage";
$text="
Vorname: $vorname \n 
Nachname: $name \n 
Staat: $land \n 
Postleitzahl: $postleitzahl \n 
Ort:$ort \n 
Strasse: $strasse \n  
Zeitraum der Buchung: vo $von bis $bis \n
Kategorie: $kategorie \n 
Erwachsene: $erwachsene \n
Kinder unter 12: $kinderunter12 \n
Kinder ueber 12: $kinderueber12 \n 
Telefon: $telefon \n
eMail: $email \n
Newsletter abonniert? $newsletter \n
zusaetzliche Bemerkungen: $bemerkungen";
mail($mail_empfaenger, $betreff, $text);
mysql_close();
?>
<?php 
$checkemail = eregi( "^" . 
               "[a-z0-9]+([_\\.-][a-z0-9]+)*".       //user 
               "@".                    //@ zeichen 
               "([a-z0-9]+([\.-][a-z0-9]+)*)+".      //domain 
         "\\.([a-z]{2}|aero|arpa|biz|com|coop|edu|gov|info|int|mil|museum|name|nato|net|org|pro)" .    //sld, tld 
               "$", $_POST['email']); 

if (!$checkemail) 
{ 
    echo "<p>Bitte eine korrekte Email Adresse eingeben.</p>"; 
} 
?> 
<table width="700" border="0" cellpadding="1" cellspacing="1">
		<td class="text" colspan="2" align="center">
		Vielen Dank für Ihr Interesse an unserem Haus.
		<br><br>
		Ihre Anfrage ist erfolgreich an uns weitergeleitet worden.
		<br><br>
		In den n&auml;chsten Tagen werden Sie die gew&uuml;nschten Informationen erhalten.
		<br><br>
		Die Daten wurden eingetragen<br> 
 		</td>
	</tr>
</table>

<?
}
else {
?>
<form method="post" action="insert.php">
			<table width="700" border="0">
				<tr>
					<td class="text" width="100%" colspan="2">			
					Haben Sie weitere Fragen ? Ben&ouml;tigen Sie mehr Informationen ? M&ouml;chten Sie 
					bei uns Urlaub machen? Dann f&uuml;llen Sie bitte unser nachstehendes Formular aus ! 
					<br><br>
					Bitte schicken Sie mir / uns : 
					<br><br>
					<INPUT type="checkbox" name="Bestellung" value="Hausprospekt" > ein Hausprospekt&nbsp;&nbsp; 
					<INPUT type="checkbox" name="Bestellung" value="Angebot" > ein Angebot
					<br><br>
					</td>
				</tr>
				<tr>
					<td class="text" width="200">
					Vorname:
					</td>
					<td class="text">
					<input type="text" name="vorname" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Name:
					</td>
					<td class="text">
					<input type="text" name="name" value="" size="44">
					</td>
				</tr>				
				<tr>
					<td class="text">
					Land:
					</td>
					<td class="text">
					<input type="text" name="land" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Strasse:
					</td>
					<td class="text">
					<input type="text" name="strasse" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Postleitzahl:
					</td>
					<td class="text">
					<table border="0" cellpadding="1" cellspacing="1" width="275">
						<tr>
							<td class="text" width="50">
								<input type="text" name="postleitzahl" value="" size="3" maxlength="7"> 
							</td>
							<td class="text" width="25">
								&nbsp;
							</td>
							<td class="text" width="40">
								Ort:
							</td>
							<td class="text" width="80">
								<input type="text" name="ort" value="" size="29">
							</td>
						</tr>
					</table>
					</td>
				</tr>
				<tr>
					<td class="text">
					Telefon:
					</td>
					<td class="text">
					<input type="text" name="telefon" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Telefax (optional):
					</td>
					<td class="text">
					<input type="text" name="telefax" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					eMail:
					</td>
					<td class="text">
					<input type="text" name="email" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text" valign="top">
					Kategorie:
					</td>
					<td class="text">
					<table border="0" cellpadding="1" cellspacing="1" width="290">
						<tr>
							<td class="text" width="35">
								<input type="radio" name="kategorie" value="Typ A">
							</td>
							<td class="text" width="105">
								&nbsp;Typ A
							</td>
							<td class="text" width="35">
								<input type="radio" name="kategorie" value="Typ B">
							</td>
							<td class="text" width="85">
								&nbsp;Typ B
							</td>
							<td class="text" width="40">
								<input type="radio" name="kategorie" value="Typ C">
							</td>
							<td class="text" width="85">
								&nbsp;Typ C
							</td>
						</tr>
						<tr>
							<td class="text" width="35">
								<input type="radio" name="kategorie" value="Typ C2">
							</td>
							<td class="text" width="95">
								&nbsp;Typ C2
							</td>
							<td class="text" width="35">
								<input type="radio" name="kategorie" value="Typ D">
							</td>
							<td class="text" width="85">
								&nbsp;Typ D
							</td>
							<td class="text" width="40">
								<input type="radio" name="kategorie" value="Typ E">
							</td>
							<td class="text" width="85">
								&nbsp;Typ E
							</td>
						</tr>
					</table>
					</td>
				</tr>
				<tr>
					<td class="text">
					Zeitraum:
					</td>
					<td class="text">
					<table border="0" cellpadding="1" cellspacing="1" width="264">
						<tr>							
							<td class="text" width="65">
								von:
							</td>
							<td class="text" width="67">
								<input type="text" name="von" value="" size="14">
							</td>
							
							<td class="text" width="65">
								&nbsp;bis:
							</td>
							<td class="text" width="67">
								<input type="text" name="bis" value="" size="15">
							</td>
						</tr>
					</table>
					</td>
				</tr>				
				<tr>
					<td class="text">
					Erwachsene:
					</td>
					<td class="text">
					<input type="text" name="erwachsene" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Kinder &uuml;ber 12 Jahre:
					</td>
					<td class="text">
					<input type="text" name="kinderunter12" value="" size="44">
					</td>
				</tr>
				<tr>
					<td class="text">
					Kinder unter 12 Jahre:  
					</td>
					<td class="text">
					<input type="text" name="kinderueber12" value="" size="44">
					</td>
				</tr>				
				<tr>
					<td class="text">
					Newsletter abonnieren? 
					</td>
					<td class="text">
					<table border="0" cellpadding="1" cellspacing="1" width="195">
						<tr>
							<td class="text" width="45">
								&nbsp;Ja
							</td>
							<td class="text" width="40">
								<input type="radio" name="newsletter" value="ja">
							</td>
							<td class="text" width="45">
								&nbsp;Nein
							</td>
							<td class="text" width="40">
								<input type="radio" name="newsletter" value="nein">
							</td>
						</tr>
					</table>
					</td>
				</tr>
				<tr>
					<td class="text" valign="top">
					Sonstiges, Bemerkungen 
					<br>
					Fragen oder Anregungen?
					</td>
					<td class="text">
					<textarea name="bemerkungen" cols="33" rows="8"></textarea>
					</td>
				</tr>	<tr>
				<td>
				<tr>
					<td class="text" valign="top">
					&nbsp;
					</td><td class="text">
					<input type="submit" name="button" value=" Absenden ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="Reset">
					</td>
				</tr>			
			</table>
<br>

</form>

<?
}
?>
</body>
</html>
 
Was funktioniert denn nicht?
geht so nicht:
PHP:
 if ($button==" Absenden ") {
besser:
PHP:
 if (isset($_POST['submit'])) {

da sind noch so einige Fehler drin....
 
Wenn du überprüfen willst, ob das eMail-Feld leer ist, dann solltest du das auch in deinen Code einbauen. Oder meinst du, PHP macht das automatisch?
 
vielleicht solltest Du Deine Werte auch erstmal abrufen:
PHP:
$_POST['email']

So wie ich das sehe, überprüfst Du zwar die Mailadresse, gibst Sie aber nirgends weiter .
 
ptolein hat gesagt.:
vielleicht solltest Du Deine Werte auch erstmal abrufen:
PHP:
$_POST['email']

So wie ich das sehe, überprüfst Du zwar die Mailadresse, gibst Sie aber nirgends weiter .
Kannst Du mir noch etwas genauer sagen, wie ich das mit der eMailprüfung machen muss?
 
Er meint, du musst zuerst aus der Form die eMailadresse auslesen musst, und dann
if(!isset($_POST['email'])//prueft ob dass Feld leer ist.
 
Am besten mal nach Threads für "Formular" suchen, dann muss ich nicht alles von vorne erklären ;)
PHP:
if (isset($_POST['submit'])) {
    $email=$_REQUEST['email'];
  }

so machst Du das erstmal für alle Variablen, die Du per POST übergeben hast.
Schau mal in die Tutorials, da findest Du bestimmt was, ok?
 

Neue Beiträge

Zurück