Kontaktformular nach erfolgreichem Versand der Daten ausblenden

sindyho0374

Mitglied
Hi Leute.
Hab ein Formular erstellt das ich nach erfolgreichem Versand ausblenden möchte. Mit JavaScript kann man ja sowas realisieren, möchte es aber gern mit PHP machen.
Vielleicht könnt Ihr mir ja wiedereinmal weiterhelfen.

kontakt.php

PHP:
<?PHP
$script = 'http://' . $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"];

$errorFields = array('Name', 'Vorname', 'Straße', 'Postleitzahl', 'Ort', 'Telefon', 'eMail', 'Nachricht');	

for($x=0;$x<count($errorFields);$x++)
{
	$errorClass[$errorFields[$x]] = 'inputField';
}



if(isset($_POST['submit']))
{
	
	$error = FALSE;
	foreach($errorFields as $key => $value)
	{
	
		if(empty($_POST[$errorFields[$key]]))
		{
			$error = TRUE;
			$errorClass[$value] = 'errorField';
			$errorPicture[$value] = '<img src="grafiken_website/achtung_klein.png">&nbsp;';
		}
	
	}

}

if($_GET['check'] == "TRUE")
{
	$errorMessage = '<div class="errorDiv">
									 Vielen Dank für Ihre Nachricht. 
									 Ihre Daten wurden an uns weitergeleitet.</div><br>';
}

if(isset($_POST['submit'])){
	
	if($error == TRUE)
	{
		$errorMessage = '<div class="errorDiv">
										 <img src="grafiken_website/achtung_gross.png">&nbsp;Achtung! Es ist zu einem Fehler gekommen. Bitte füllen Sie alle 
										 farblich markierten Pflichtfelder aus.</div><br>';
	}
	else
	{
		
		// Alles ist in Ordnung
		// Daten können gespeichert werden
		  
  $zeit = date("d.m.y \t H:i:s");    
        $ip_adresse = $_SERVER['REMOTE_ADDR'];
        
        $DeineEMailAdresse = "kontakt@vogtland-dragons.de";

        $DerEMailText = 
"Datum:\t". $zeit ."\n"
.
"IP:\t\t".$ip_adresse."\n"
.
"Name:\t\t".trim($_POST['Name'])."\n"
.
"Vorname:\t\t".trim($_POST['Vorname'])."\n"
.
"Firma:\t\t".trim($_POST['Firma'])."\n"
.
"Straße:\t\t".trim($_POST['Straße'])."\n"
.
"Postleitzahl:\t\t".trim($_POST['Postleitzahl'])."\n"
.
"Ort:\t\t".trim($_POST['Ort'])."\n"
.
"Telefon:\t\t".trim($_POST['Telefon'])."\n"
.
"Fax:\t\t".trim($_POST['Fax'])."\n"
.
"eMail:\t\t".trim($_POST['eMail'])."\n"
.
"\n" . trim($_POST['Nachricht']);  
        
        $header = "From: magnetschild24.de - Kontaktformular ". $_POST['Name'] . " <" .  $_POST['eMail'] . ">\r\n";    
                    
        mail($DeineEMailAdresse, $betreff, $DerEMailText, $header);		
		
		// Seite neu laden und Hinweis anzeigen
		header("Location: $script?check=TRUE");
	}

}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<META NAME="Title" CONTENT="magnetschild24.de,saxana.com,Magnetschild fuer Autowerbung, Feuerwehr, Verein, Organisationen, Firmenwerbung">
<META NAME="Author" CONTENT="Bernd Reuter">
<META NAME="Publisher" CONTENT="saxana.com">
<META NAME="Keywords" CONTENT="magnetschild,magnetschild24,saxana,saxana.com,sms flirt,free sms,feuerwehr,freiwillige feuerwehr,rettungsdienst,auto werbung, bos, rettungssanitäter, sanitäter, katastrophenschutz, werbung, blaulicht">
<META NAME="Description" CONTENT="Magnetschilder für Ihr Auto, Firmenwagen oder Vereinswagen mit Werbung, Vereine, Organisationen, Firmen und Fun. Feuerwehr Magnetschild, Free SMS Service">
<META NAME="page-topic" CONTENT="Dienstleistung">
<META NAME="page-topic" CONTENT="Produktinfo">
<META NAME="audience" CONTENT="Alle">
<META NAME="Language" CONTENT="Deutsch">
<meta name="robots" content="index, follow">
<META NAME="Revisit" CONTENT="After 10 days">
<meta name="google-site-verification" content="ucqExDt0zx2Y-Z4PwOCEGGVgg_hiF4lLsg48phNht6w" />
<title>magnetschild24.de-Wir realisieren Ihre Idee!</title> 
<link rel="shortcut icon" href="favicon.ico" /> 
<link href="css/style.css" rel="stylesheet" type="text/css" /> 

</head> 

<body> 
<!--Content--> 
<div id="content"> 
<!--Head--> 
<div id="head" title="magnetschild24.de-Wir realisieren Ihre Idee!"> 
<!--Navi_Top--> 
<div id="navi_top"> 
<a href="index.php?s=index" title="Startseite"<?php echo ($s == 'index'?' class="hauptlink"':' class="hoverlink"'); ?>>Startseite&nbsp;&middot;</a> 
<a href="index.php?s=agb" title="AGB"<?php echo $s == 'agb'?' class="hauptlink"':' class="hoverlink"'; ?>>AGB&nbsp;&middot;</a> 
<a href="kontakt.php" title="Kontakt"<?php echo ($s == 'kontakt' || $s == NULL ?' class="hauptlink"':' class="hoverlink"'); ?>>Kontakt&nbsp;&middot;</a> 
<a href="index.php?s=impressum" title="Impressum"<?php echo $s == 'impressum'?' class="hauptlink"':' class="hoverlink"'; ?>>Impressum</a> 
</div> 
<!--End Navi_Top--> 
</div> 
<!--End Head--> 
<!--Navigation-Horizontal--> 
<div id="navigation"> 
<div id="navi"> 
    <ul> 
    <li><a href="index.php?s=index" title="Startseite"<?php echo ($s == 'index'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Startseite</a></li> 
    <li><a href="index.php?s=magnetschilder" title="Magnetschilder"<?php echo ($s == 'magnetschilder'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Magnetschilder</a></li> 
    <li><a href="index.php?s=produkthinweise" title="Produkthinweise"<?php echo ($s == 'produkthinweise'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Produkthinweise</a></li> 
    <li><a href="feedback.php" title="Tragen Sie sich in unser Gästebuch ein!"<?php echo ($s == 'feedback'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Feedback</a></li> 
    <li><a href="index.php?s=links" title="Links"<?php echo ($s == 'links'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Links</a></li> 
    <li><a href="shop" title="Shop"<?php echo ($s == 'shop'?' class="hauptlinknavi"':' class="hoverlinknavi"'); ?>>Shop</a></li> 
    </ul> 
</div> 
</div> 
<!--End Navigation-Horizontal--> 
<!--Ausgabe Inhalte--> 
<div id="ausgabe_inhalte"> 
<!--Inhalte-->
<div id="inhalte">
<!--Inhalte_Links-->
<div id="inhalte_links">
<!--Left_one-->
<div id="left_one">
<?php include("includes/firmeninfos.inc.php"); ?>
</div>
<!--End Left_one-->
<!--Left_two-->
<!--End Left_two-->
<!--Left_three-->
<!--End Left_three-->
</div>
<!--End Inhalte_Links--> 
<!--Inhalte_Rechts-->
<div id="inhalte_rechts">
<!--Mitte-->
<div id="mitte">
<!--Mitte_Kontakt-->
<div id="mitte_kontakt">
<h1>Treten Sie mit uns in Kontakt!</h1>
<p>
Haben Sie Fragen zu unseren Produkten?
Nutzen Sie die Gelegenheit und füllen Sie bitte das untenstehende Formular aus.
Wir werden uns nach Erhalt Ihrer Anfrage oder Ihres Anliegens mit Ihnen in Verbindung setzen.
</p>
</div>
<!--End Mitte_Kontakt-->
</div>
<!--End Mitte-->
<!--Mitte_Kontakt_Formular-->
<div id="mitte_kontaktformular">
<div id="errorDiv">
<p><?PHP echo $errorMessage; ?></p>
</div>
<!--Mitte_Kontakt-->
<div id="mitte_kontakt">
<form class="cmxform" action="<?PHP echo $script; ?>" method="post">
<fieldset>
  <legend>Namensangaben</legend>
  <ol>
    <li>
      <label for="Name"><?PHP echo $errorPicture['Name']; ?>&nbsp;Name: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Name']; ?>" name="Name" value="<?PHP echo $_POST['Name']; ?>" />
    </li>
	    <li>
      <label for="Vorname"><?PHP echo $errorPicture['Vorname']; ?>&nbsp;Vorname: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Vorname']; ?>" name="Vorname"  value="<?PHP echo $_POST['Vorname']; ?>" />
    </li>
		    <li>
      <label for="Firma">&nbsp;Firma:</label>
      <input class="wert" name="Firma" value="Bitte nur ausfüllen wenn Firma vorhanden"/>
    </li>
</ol>
</fieldset>

<fieldset>
  <legend>Adressangaben</legend>
  <ol>
    <li>
      <label for="Straße"><?PHP echo $errorPicture['Straße']; ?>&nbsp;Straße: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Straße']; ?>" name="Straße" value="<?PHP echo $_POST['Straße']; ?>" />
    </li>
	    <li>
      <label for="Postleitzahl"><?PHP echo $errorPicture['Postleitzahl']; ?>&nbsp;Postleitzahl: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Postleitzahl']; ?>" name="Postleitzahl" value="<?PHP echo $_POST['Postleitzahl']; ?>" />
    </li>
	    <li>
      <label for="Ort"><?PHP echo $errorPicture['Ort']; ?>&nbsp;Ort: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Ort']; ?>" name="Ort" value="<?PHP echo $_POST['Ort']; ?>" />
    </li>
</ol>
</fieldset>

<fieldset>
  <legend>Angaben Telefon, Mobil, Fax und Email</legend>
  <ol>
    <li>
      <label for="Telefon"><?PHP echo $errorPicture['Telefon']; ?>&nbsp;Telefon o. Mobil: <em>*</em></label>
      <input class="<?PHP echo $errorClass['Telefon']; ?>" name="Telefon" value="<?PHP echo $_POST['Telefon']; ?>" />
    </li>
	    <li>
      <label for="Fax">&nbsp;Fax:</label>
      <input class="wert" name="Fax" value= "Bitte nur ausf&uuml;llen wenn Faxnummer vorhanden" />
    </li>
	    <li>
      <label for="eMail"><?PHP echo $errorPicture['eMail']; ?>&nbsp;Email: <em>*</em></label>
      <input class="<?PHP echo $errorClass['eMail']; ?>" name="eMail" value="<?PHP echo $_POST['eMail']; ?>" />
    </li>
</ol>
</fieldset>

<fieldset>
  <legend>Ihre Anfrage!</legend>
  <ol>
    <li>
	  <label for="Nachricht"><?PHP echo $errorPicture['Nachricht']; ?>&nbsp;Nachricht: <em>*</em></label>
<textarea class="<?PHP echo $errorClass['Nachricht']; ?>" name="Nachricht" rows="5" cols="50" ><?PHP echo $_POST['Nachricht']; ?></textarea> 
	</li>

</ol>
</fieldset>

<fieldset>
  <legend>Senden Sie Ihre Anfrage ab!</legend>
  <ol>
    <li>
<input name="submit" type="submit" value="abschicken" class="submit_reset" />
<input type="reset" value="zurücksetzen" class="submit_reset" />
	</li>

</ol>
</fieldset>

</form>
</div>
<!--End Mitte_Kontakt-->
</div>
<!--End Mitte_Kontakt_Formular-->
</div>
<!--End Inhalte_Rechts-->
</div>
<!--End Inhalte-->

</div> 
<!--End Ausgabe Inhalte--> 
<!--Footer--> 
<div id="footer"> 
<!--Links und Firmenlogos--> 
<div id="links_firmenlogos"> 
<!--Shopbutton--> 
<div id="shopbutton"> 
  <a href="shop.php" title="...zum Onlineshop"><img src="grafiken_website/shopbutton.png" border="0" /></a> 
</div> 
<!--End Shopbutton--> 
<!--Links--> 
<div id="links"> 
<!--Navigation_Footer-->
<div id="navi_footer">
<a href="index.php?s=index" title="Startseite"<?php echo ($s == 'index'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Startseite&nbsp;&middot;</a> 
<a href="index.php?s=magnetschilder" title="Magnetschilder"<?php echo ($s == 'magnetschilder'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Magnetschilder&nbsp;&middot;</a> 
<a href="index.php?s=produkthinweise" title="Produkthinweise"<?php echo ($s == 'produkthinweise'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Produkthinweise&nbsp;&middot;</a> 
<a href="feedback.php" title="Tragen Sie sich in unser Gästebuch ein!"<?php echo ($s == 'feedback'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Feedback&nbsp;&middot;</a> 
<a href="index.php?s=links" title="Links"<?php echo ($s == 'links'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Links&nbsp;&middot;</a> 
<a href="index.php?s=shop" title="Shop"<?php echo ($s == 'shop'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Shop&nbsp;&middot;</a> 
<a href="index.php?s=agb" title="Allgemeine Geschäfts Bedingungen"<?php echo ($s == 'agb'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>AGB&nbsp;&middot;</a> 
<a href="kontakt.php" title="Kontakt"<?php echo ($s == 'kontakt' || $s == NULL ?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Kontakt&nbsp;&middot;</a> 
<a href="index.php?s=impressum" title="Impressum"<?php echo ($s == 'impressum'?' class="footerhauptlink"':' class="footerhoverlink"'); ?>>Impressum</a> 
</div>
<!--End Navigation_Footer-->
<!--Copyrightinfo-->
<div id="copyrightinfos">
<p title="Copyrightinfo">&copy; 2010 Internet PC Service | Email: <a title="info[at]magnetschild24.de" href="mailto:info@magnetschild24.de">info@magnetschild24.de</a> <a href="http://www.magnetschild24.de" title="www.magnetschild24.de">www.magnetschild24.de</a> | <a href="http://www.saxana.com" title="www.saxana.com">www.saxana.com</a> 
</div>
<!--End Copyrightinfo-->
</div> 
<!--End Links--> 
<!--Firmenlogos--> 
<div id="firmenlogos"> 
<img src="grafiken_website/footerlogos.jpg" border="0" usemap="#Map" /> 
<map name="Map" id="Map"> 
  <area shape="rect" coords="34,6,267,63" href="http://www.magnetschild24.de" alt="www.magnetschild24.de" title="www.magnetschild24.de" /> 
  <area shape="rect" coords="35,65,190,93" href="http://www.saxana.com" alt="www.saxana.com" title="www.saxana.com" /> 
</map> 
</div> 
<!--End Firmenlogos--> 
</div> 
<!--End Links und Firmenlogos--> 
<!--Copyright--> 

<!--End Copyright--> 
</div> 
<!--End Footer--> 
</div> 
<!--End Content--> 
</body> 
</html>
 
Hab grad keinen Bock deine 42384 Zeilen durchzugehen. Darum hier nur ein klienes Besipiel

PHP:
<?php 
if(!isset($_POST['submit'])){
echo '
<form method="post">
    test: <input type="checkbox" name ="check1" value="1">
    <input type="submit" name="submit" title="Speichern" />
</form> ';
}
?>
 
@yaslaw:
Du hast dich verzählt es sind doch nur 42380, also stell dich nicht so an ;)

@sindyho0374:
Das was yaslaw dir geschrieben hat ist genau das was du brauchst. Beim Aufruf der Seite wird geprüft ob ein Wert für $_POST["submit"] vorhanden ist bzw. ob diese Variable gesetzt ist (dies ist immer dann der Fall wenn das Formular gesendet wurde).

Ist dies nicht der Fall "!isset" prüft ob sie NICHT gesetzt ist, dann wird das Formular angezeigt. Soll heißen der gesamte Code des Formulars muss zwischen diesen IF-Block.

Für den Fall das der Wert vorhanden ist (das Formular wurde also gesendet) machst du einen ELSE-Block und gibst z.B. eine Meldung aus "Formular wurde versendet." oder so ähnlich.

Gruß Thomas
 
Bringt mich aber nicht wirklich weiter.
Dann habe ich deine Frage nicht verstanden.

Was dein Code angeht, darf ich dir sicher die Regeln fürs PHP-Forum nahelgen.
Posten von Quelltext

Anhand von Quelltext lassen sich die Fehler oder Probleme oft relativ schnell finden. Aber auch hier gilt die Devise: Qualität statt Quantität.
Soll heißen, dass wir sämtlichen HTML-Code NICHT im Beitrag sehen möchten – auch nicht, wenn er per echo/print ausgegeben wird. Solange es sich um PHP-Code handelt, ist es kein Problem, aber alles andere hat dort nichts zu suchen. Was ihr aber immer machen könnt, ist, das Script als Anhang mitzuschicken, dann kann mal jemand einen Blick riskieren. Bitte haltet euch an diese Regel.

Diese Regel ist nicht einfach so, weil sie grad lustig ist. Ich tue mir es nicht an dein Code zu lesen, da es zuviel für die Lösungssuche unnützes Zeug drin hat und ich nicht alles selber aussortieren will.
Wie du zum Beispiel im Thread 'mysql_fetch_assoc in while-Schleife gibt nicht alle Datensätze aus' sehen kannst, reicht eine Reduktion bereits aus um manchen Fehler zu finden
 
Dann habe ich deine Frage nicht verstanden.

Was dein Code angeht, darf ich dir sicher die Regeln fürs PHP-Forum nahelgen.


Diese Regel ist nicht einfach so, weil sie grad lustig ist. Ich tue mir es nicht an dein Code zu lesen, da es zuviel für die Lösungssuche unnützes Zeug drin hat und ich nicht alles selber aussortieren will.
Wie du zum Beispiel im Thread 'mysql_fetch_assoc in while-Schleife gibt nicht alle Datensätze aus' sehen kannst, reicht eine Reduktion bereits aus um manchen Fehler zu finden

Werd mich bemühen das es das nächste mal besser wird :)
Den Code den du mir hier geposted hast ist scho i.O.. Hab nur wieder nicht genau gelesen. Also ruhig Blut

LG
 
Ich mache das immer so (Kurzfassung):

PHP:
$fehler = 0;

// wenn das Formular abgeschickt wurde
// prüfen ob alle Felder ausgefüllt sind und die Angaben korrekt sind
if (isset($_POST["submit"])) {
    if (!isset($_POST["vorname"])) $fehler = 1;
    if (!isset($_POST["nachname"])) $fehler = 1;
}

// dann nochmal prüfen ob Seite zum ersten Mal aufgerufen wurde
//  oder ob das Formular Fehler enthält
if (!isset($_POST["submit"]) or $fehler == 1) {
    // Formular anzeigen
} else {
    // Formular wurde abgeschickt und enthält keine Fehler
    echo "Das Formular wurde erfolgreich versendet.";
}
 

Neue Beiträge

Zurück