Zur Navigation

Phpmailer in existierendes Formular einbinden [2]

11 Jörg

ich bekomme schon wieder eine weiße Seite :(

Dann würde ich mal schauen, das Error-Reporting zum Laufen zu bringen, anderfalls wird das Debuggen leicht zum Stochern im Nebel.

ich glaube ich habe in $text ein Fehler drinne

Wenn du Variablen in einen String einbauen möchtest, dann musst du entweder doppelte Anführungszeichen verwenden:

$text = "bla {$blub['xyz']} bla";

... oder wenn du einfache Anführungszeichen möchtest, Strings und Variabeln mit dem Punkt-Operator verketten:

$text = 'bla ' . $blub['xyz'] . ' bla';

Das funktioniert jedenfalls nicht wie gewünscht:

$text='Hallo {$_POST['vorname']} {$_POST['nachname']},
[...]
Verwendungszweck: PPC 2015, {$_POST['nachname']}, {$_POST['vorname']}, {$turnierklasse}, {$_POST['verein']}';

28.03.2015 20:33 | geändert: 28.03.2015 20:34

12 tobi

ok. danke schon mal.

wieder ein schritt weiter.

aktuell sieht es so aus. jetzt möchte ich aber den bereich des alten mailversandes weg haben, wenn ich da teile raus lösche, dann bleibt die seite wieder weiß .... ich bekomme dies mit der weißen seite und dem errorreporting nicht in griff.

{//Bestätigungsemail an den Anmeldenden
		
		//Betreff in der E-Mail ermitteln, je nach Teilnehmeranzahl
		$subject='Bestätigung der Anmeldung zum PPC 18';
			if($altSignUp) $subject='Warteliste - PPC 18';	

		//Zeit ermittelt an dem das Formular ausgefüllt wurde
		$today_Wochentag=date('l');
		$today_Datum=date('d.m.Y');
		$today_Uhrzeit=date('H:i');
		
		//Anmeldung oder Anfrage ausgegeben, je nach Teilnehmeranzahl
		$anmeldung_oder_warteliste='Anmeldung';
			if($altSignUp) $anmeldung_oder_warteliste='Anfrage';	

		$text="
				Hallo {$_POST['vorname']} {$_POST['nachname']},
				
				am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist deine {$anmeldung_oder_warteliste} bei uns eingegangen.
				
				An die Turnierleitung wurden folgende Angaben übermittelt:
				Vorname: {$_POST['vorname']}
				Nachname: {$_POST['nachname']}
				Geschlecht: {$_POST['geschlecht']}
				Kontakt-E-Mail: {$_POST['email']}
				Q-TTR 11.08.2015: {$_POST['ttr']}
				Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
				
				Verein: {$_POST['verein']}				
				Startgebühr: {$startgeld}
				Vorkasse: {$vorkasse}
				
				Für eine schnellere Abwicklung beim Turnier gibt es die Möglichkeit per Vorkasse bis zum 10.09.2015 (Geldeingang) die Startgebühür zu überweisen.
				Kontodaten:
				Betrag: {$vorkasse}
				Verwendungszweck: PPC 2015, {$_POST['nachname']}, {$_POST['vorname']}, {$turnierklasse}, {$_POST['verein']}
				
				Hinweis:
				Die Teilnehmer des Turniers werden zeitnah auf der Homepage veröffentlicht. Zu den einzelnen Teilnehmerfeldern:
				[link]
				Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung via E-mail: [mailadresse]
				
				Vielen Dank!
				
				Mit sportlichen Grüßen
				";
					if($altSignUp) $text="	
											Hallo {$_POST['vorname']} {$_POST['nachname']},
											
											am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist deine {$anmeldung_oder_warteliste} bei uns eingegangen. Dies ist keine Turnierbestätigung!
											Aktuell ist die Teilnehmergrenze in deinem gemeldeten Wettbewerb überschritten und wir können deine Anfrage aktuell leider noch nicht bestätigen. Erfahrungsgemäß sagen aber kurz vor Turnierbeginn noch der ein oder andere Spieler/in ab. In einem solchen Fall würden wir dann umgehend mit dir Kontakt aufnehmen.
											
											An die Turnierleitung wurden vorab aber schon mal folgende Angaben übermittelt:
											Vorname: {$_POST['vorname']}
											Nachname: {$_POST['nachname']}
											Geschlecht: {$_POST['geschlecht']}
											Kontakt-E-Mail: {$_POST['email']}
											Q-TTR 11.08.2015: {$_POST['ttr']}
											Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
											Verein: {$_POST['verein']}
											
											Vielen Dank!
											
											Mit sportlichen Grüßen
";
		
		//UTF-8 Kodierung festlegen
		$mail->CharSet  =  "utf-8"; 
		
		//Absenderadresse der Email setzen
		$mail->setFrom("unsereMailadresse");
		$mail->addReplyTo("unsereMailadresse");
  
		//Name des Abenders setzen
		$mail->FromName = ("unserNamen");
  
		//Empfängeradresse setzen
		$mail->AddAddress ($_POST['email']);
  
		//Betreff der Email setzen
		$mail->Subject = $subject;
 
		//Text der EMail setzen
		$mail->Body = $text;
  
  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo "Die Email konnte nicht gesendet werden";
     echo "Fehler: " . $mail->ErrorInfo;
  }
  else
  {
     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
     echo "Die Email wurde versandt.";
  }
		
	      	$today=date('l; d.m.Y H:i:s');
			$to=$_POST['email'];
			$subject='Bestätigung der Anmeldung';
			if($altSignUp) $subject='Warteliste - Bestätigung der Daten';
			$text='Hallo '.$_POST['vorname'].' '.$_POST['nachname'].',
			
soeben ('.$today.') ist Ihre ';
			if(!$altSignUp)
				$text.='Anmeldung bei uns eingegangen.
				
Hier als Best�tigung und zur Überprüfung die angegebenen Daten:';
			else
				$text.='Anfrage zu einer Turnierteilnahme bei uns eingegangen.
Aktuell ist die Teilnehmergrenze in Ihrem gemeldeten Wettbewerb überschritten und wir k�nnen Ihre Anfrage aktuell noch nicht bestätigen. Erfahrungsgemäß sagen aber kurz vor Turnierbeginn noch der ein oder andere Spieler ab. In einem solchen Fall würden wir dich dann umgehend kontaktieren.
Hier zur Überprüfung die angegebenen Daten:';

			$text.='
Angemeldete Turnierklasse samt Turniertag: '.$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'').'

Vorname: '.$_POST['vorname'].'
Nachname: '.$_POST['nachname'].'
Q-TTR 11.08.2015: '.$_POST['ttr'].'
Verein: '.$_POST['verein'].'
Startgeb�hr: '.$startgeld.'
Vorkasse: '.$vorkasse.'

F�r eine schnellere Abwicklung beim Turnier gibt es die Möglichkeit per Vorkasse bis zum 10.09.2015 (Geldeingang) die Startgebühür zu überweisen.
Kontodaten:
Betrag: '.$vorkasse.'
Verwendungszweck: PPC 2015, '.$_POST['nachname'].', '.$_POST['vorname'].', '.$turnierklasse.', '.$_POST['verein'].' 

Hinweis:
Die Teilnehmer des Turniers werden zeitnah auf der Homepage veröffentlicht. Zu den einzelnen Teilnehmerfeldern:
link/';
			if(!$altSignUp)
				$text.='
Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung via E-mail: mailadresse

Vielen Dank!
Mit freundlichen Grüßen';
			else
				$text.='
				Vielen Dank!
Mit freundlichen Grüßen';
			$header='From: UNS <unsereAdresse>'."\n".'Reply-To: UNS <unsereAdresse>'."\n";
			if(!empty($_POST['email_alt'])) $header .='Cc: '.$_POST['email_alt']."\n";
$header .= "Mime-Version: 1.0\n";
$header .= "Content-Type: text/plain; charset=utf-8\n";
			if(mail($to,'=?UTF-8?B?'.base64_encode($subject).'?=',$text,$header))
			
			{//Mail an die Turnierleitung
			
		//Betreff in der E-Mail ermitteln, je nach Teilnehmeranzahl
		$subject='Neue Anmeldung zum PPC 18';
			if($altSignUp) $subject='Warteliste - Neue Anfrage';	

		//Zeit ermittelt an dem das Formular ausgefüllt wurde
		$today_Wochentag=date('l');
		$today_Datum=date('d.m.Y');
		$today_Uhrzeit=date('H:i');
		
		//Anmeldung oder Anfrage ausgegeben, je nach Teilnehmeranzahl
		$anmeldung_oder_warteliste='Anmeldung';
			if($altSignUp) $anmeldung_oder_warteliste='Anfrage';	

		$text=" ANMELDUNG!!!
				Hallo Turnierleitung,
				
				am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist eine neue Anmeldung eingegangen.
				
				Hier die Angaben des Spielers/der Spielerin::
				Vorname: {$_POST['vorname']}
				Nachname: {$_POST['nachname']}
				Geschlecht: {$_POST['geschlecht']}
				Kontakt-E-Mail: {$_POST['email']}
				E-Mail 2: {$_POST['email_alt']}
				Q-TTR 11.08.2015: {$_POST['ttr']}
				Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
				Geburtsjahr: {$_POST['geburtsjahr']}
				Verein: {$_POST['verein']}				
				
				Mit sportlichen Grüßen
				{$_POST['vorname']} {$_POST['nachname']}
				";
					if($altSignUp) $text="	WARTELISTE!!!
					
											Hallo Turnierleitung,
				
											am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist eine neue Anfrage eingegangen.
				
											Hier die Angaben des Spielers/der Spielerin::
											Vorname: {$_POST['vorname']}
											Nachname: {$_POST['nachname']}
											Geschlecht: {$_POST['geschlecht']}
											Kontakt-E-Mail: {$_POST['email']}
											E-Mail 2: {$_POST['email_alt']}
											Q-TTR 11.08.2015: {$_POST['ttr']}
											Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
											Geburtsjahr: {$_POST['geburtsjahr']}
											Verein: {$_POST['verein']}				
				
											Mit sportlichen Grüßen
											{$_POST['vorname']} {$_POST['nachname']}
											";
		
		//UTF-8 Kodierung festlegen
		$mail->CharSet  =  "utf-8"; 
		
		//Absenderadresse der Email setzen
		$mail->setFrom($_POST['email'], $_POST['vorname'].' '.$_POST['nachname']);
		$mail->addReplyTo($_POST['email'], $_POST['vorname'].' '.$_POST['nachname']);
  
		//Name des Abenders setzen
		$mail->FromName = ($_POST['vorname'].' '.$_POST['nachname']);
  
		//Empfängeradresse setzen
		$mail->AddAddress("UnsereAdresse");
  
		//Betreff der Email setzen
		$mail->Subject = $subject;
 
		//Text der EMail setzen
		$mail->Body = $text;
  
  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo "Die Email konnte nicht gesendet werden";
     echo "Fehler: " . $mail->ErrorInfo;
  }
  else
  {
     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
     echo "Die Email wurde versandt.";
  }			
			
			
$to='unsereAdresse';
			    $to='unsereAdresse';
				$subject='Neue Anmeldung';
				if($altSignUp) $subject='Warteliste - Neue Anfrage';
				$text=''.($altSignUp?'- WARTELISTE -':'').'Es gibt eine neue Anmeldung ('.$today.')

Übermittelte Daten:
Vorname: '.$_POST['vorname'].' 
Nachname: '.$_POST['nachname'].'
Geschlecht: '.$_POST['geschlecht'].'
Geburtsjahr: '.$_POST['geburtsjahr'].'
Kontakt-E-Mail: '.$_POST['email'].'
E-Mail 2: '.$_POST['email_alt'].'
Quartals-TTR vom 11.08.2015: '.$_POST['ttr'].'
Angemeldete Turnierklasse: '.$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'').'
Verein: '.$_POST['verein'].'
Bemerkung: '.$_POST['eintrag'].'';
			    $header='From: "'.$_POST['vorname'].' '.$_POST['nachname'].'" <'.$_POST['email'].'>'. "\n".'Reply-To: <'.$_POST['email'].'>'."\n";				
				$header .= "Mime-Version: 1.0\n";
				$header .= "Content-Type: text/plain; charset=utf-8\n";
				if(mail($to,$subject,$text,$header))
				{
					?><p><span class="gruen"><b>Die <?php echo($altSignUp?'Anfrage':'Anmeldung');?> ist bei uns eingegangen!<br/>In deinem Postfach befindet sich eine Bestätigung der <?php echo($altSignUp?'Anfrage':'Anmeldung');?>.</b></span><br/><br/><a class="links" href=index.php title="PPC-Allgemein">Zurück zur Übersicht</a> oder <a class="links" href="http://link" title="Homepage">zur Webseite des</a></p><?php
				}else{?><p><span class="gruen"><b><?php echo($altSignUp?'Anfrage':'Anmeldung');?> erfolgreich</b></span>, <span class="rot"><b>Probleme mit Mailversand.</b></span><br/><br/><a class="links" href=index.php title="PPC-Allgemein">Zurück zur Übersicht</a> oder <a class="links" href="http://link" title="Homepage">zur Webseite</a></p><?php }
			}else{
				?><p><span class="rot"><b>Die <?php echo($altSignUp?'Anfrage':'Anmeldung');?> ist Fehlgeschlagen!<br/>Leider trat beim Mailversand ein unerwartetes Problem auf.</b></span></p><br/><?php
				$show_form=true;
			}
		}else{die('<b>MySQL Error:</b><div class="rot">'.mysql_error().'</div><br/>');$show_form=true;}
	}
}

29.03.2015 17:13

13 Jörg

ich bekomme dies mit der weißen seite und dem errorreporting nicht in griff.

Wie und wo genau hast du Error Reporting eingeschaltet?

Das muss ganz an den Anfang der betreffenden Datei (d.h. nach dem ersten "<?php"):

ini_set('display_errors', 1);                                                      
error_reporting(E_ALL);

30.03.2015 09:09 | geändert: 30.03.2015 09:11

14 tobi

hier dann die komplette Datei (steht ganz am Anfang drinne. Ich halte mich schon an die Tipps die ich bekomme ...):
<?php
//Fehlermeldungen ausgeben
ini_set('display_errors', 1);                                                      
error_reporting(E_ALL);
//include des Kopfbereiches
include("include/kopf.php");
//include der Navigation
include("include/navigation.php");
//include Anfang des ganzen Inhaltes
include("include/anfang-ganzer-inhalt.php");
?>
	 
		    <!-- Anfang Linker Inhalt -->
		    <div id="linkerinhalt">
				<h1>Anmeldung</h1>	 
				<p>für den Turniertag 2, Sonntag den 13.09.2015</p>
				
<title>Anmeldung</title>

<?php
// max. Anzahl Teilnehmer Sonntag - 192
$max_sonntag=192;
// sql-Abfrage 1 - Ermitteln Anzahl A-Klasse + Teilweise Damen A (Turnierklasse = 5)
$query=mysql_query('SELECT Count(*) FROM anmeldungen_2014 WHERE gemeldeteKlasse = \'5\'');
list($num_aklasse)=mysql_fetch_row($query);
// sql-Abfrage 2 - Ermitteln Anzahl B-Klasse + Teilweise Damen A (Turnierklasse = 4)
$query=mysql_query('SELECT Count(*) FROM anmeldungen_2014 WHERE gemeldeteKlasse = \'4\'');
list($num_bklasse)=mysql_fetch_row($query);
// sql-Abfrage 3 - Ermitteln Anzahl C-Klasse + Teilweise Damen A (Turnierklasse = 3)
$query=mysql_query('SELECT Count(*) FROM anmeldungen_2014 WHERE gemeldeteKlasse = \'3\'');
list($num_cklasse)=mysql_fetch_row($query);
unset($query);
// alle Klassen Sonntags zusammengesetzt
$num_sonntag = $num_aklasse + $num_bklasse + $num_cklasse;
?>
<?php
//begin POST form check
$show_form=false;
//entweder einfacher Check (nur namen angeben), oder erweiterter via Regularexpression ([name,regex,errormsg])
$frm_field=array(
	array('email','/^[\w\-\.\+]+@([\w\-]+\.?)+$/','Bitte g�ltige E-Mail eintragen!'),
	'vorname','nachname'
	,array('geschlecht','/^(M|W)$/','Bitte Geschlecht ausw�hlen!'),
	array('geburtsjahr','/^(19|20)\d\d$/','Bitte gültiges Geburtsjahr eintragen (z.B. 1967)!'),
	'ttr','verein',
	array('turnierklasse','/^[1-5]$/','Bitte g�ltige Turnierklasse ausw�hlen!'),
	array('email_alt','/(^[\w\-\.\+]+@([\w\-]+\.?)+$|^$)/','Optionales Feld, darf leer gelassen werden oder weitere g�ltige E-Mail eintragen!'));
$frm_error=array();
if(isset($_POST['email'])){
	foreach($frm_field as $val){
		if(!is_array($val)) {
			if(empty($_POST[$val])){
				$_POST[$val]='';
				$frm_error[$val]=' <span class="rot">Bitte ausf�llen!</span>';$show_form=true;
			}else $frm_error[$val]='';
		}else{
			if(!isset($_POST[$val[0]])){
				$_POST[$val[0]]='';
				$frm_error[$val[0]]=' <span class="rot">Bitte ausf�llen!</span>';$show_form=true;
			}elseif(!preg_match($val[1],$_POST[$val[0]])){
				$frm_error[$val[0]]=' <span class="rot">'.$val[2].'</span>';$show_form=true;
			}else $frm_error[$val[0]]='';
		}
	}
}else{
	foreach($frm_field as $val){
		if(is_array($val)){
			if(!isset($_POST[$val[0]]))
				$_POST[$val[0]]='';
			$frm_error[$val[0]]='';
		}elseif(!isset($_POST[$val])){
			$_POST[$val]='';
			$frm_error[$val]='';
		}
	}
	$show_form=true;
}
unset($frm_field);
//vom check oben nicht betroffen (da optional)
if(!isset($_POST['eintrag']))
	$_POST['eintrag']='';
if(!isset($_POST['turnierklasse_ex']))
	$_POST['turnierklasse_ex']='';
//end POST form check

if(!$show_form){//sende anfrage / eintragen
	$_POST['turnierklasse']=intval($_POST['turnierklasse']);
	$turnierklassestr='';
	$altSignUp=($num_sonntag>=$max_sonntag);//case 1&2 change it again
	switch($_POST['turnierklasse']){
	case 1:
	      $turnierklasse = 'C-Klasse';
	      $turnierklassestr='C-Klasse - Sonntag 13. September 2015';
		  $startgeld = '10€';
		  $vorkasse = '9€';			  
		  break;
	case 2:
	      $turnierklasse = 'B-Klasse';
	      $turnierklassestr='B-Klasse - Sonntag 13. September 2015';
		  $startgeld = '10€';
		  $vorkasse = '9€';	
		  break;
	case 3:
	      $turnierklasse = 'A-Klasse';
	      $turnierklassestr='A-Klasse - Sonntag 13. September 2015';
		  $startgeld = '10€';
		  $vorkasse = '9€';	
	      break;
	}
	if(mysql_fetch_object(mysql_query('SELECT * FROM `anmeldungen_2014` WHERE `vorname` = \''.mysql_real_escape_string($_POST['vorname']).'\' AND `nachname` = \''.mysql_real_escape_string($_POST['nachname']).'\' LIMIT 1'))){
		?><p><span class="rot"><b>Die Anmeldung ist Fehlgeschlagen!<br/>Die von dir angegebene Person <?php echo $_POST['vorname'].' '.$_POST['nachname'];?> ist bereits angemeldet.</b></span></p>
				<p>Falls dem nicht so seien sollte, kontaktiere uns bitte via E-Mail unter dieser Mailadresse: <a class="mailto" href="mailto:;">test&nbsp;[at]&nbsp;test&nbsp;[Punkt]&nbsp;de</a></p>
				<p><a class="links" href=index.php title="Zurück zur Übersichtsseite">Zurück zur Übersichtsseite</a> oder <a class="links" href="http://test.de" title="Homepage">zur Webseite des Test</a>
				</p><?php
		$show_form=false;
	}else{//eintragen
		$mysql_query='
INSERT INTO `anmeldungen_2014`
(`vorname`, `nachname`, `geschlecht`, `geburtsjahr`, `ttr`, `email`, `verein`, `gemeldeteKlasse`, `anmerkung`, `timestamp`)
VALUES
(\''.mysql_real_escape_string($_POST['vorname']).'\', \''.mysql_real_escape_string($_POST['nachname']).'\', \''.mysql_real_escape_string($_POST['geschlecht']).'\', \''.mysql_real_escape_string($_POST['geburtsjahr']).'\', \''.mysql_real_escape_string($_POST['ttr']).'\', \''.mysql_real_escape_string($_POST['email']).'\', \''.mysql_real_escape_string($_POST['verein']).'\', \''.$_POST['turnierklasse'].'\', \''.mysql_real_escape_string($_POST['eintrag']).'\', NOW())';
		if(mysql_query($mysql_query)){//Bestätigungsemail an den Anmeldenden
		
		//Betreff in der E-Mail ermitteln, je nach Teilnehmeranzahl
		$subject='Bestätigung der Anmeldung zum PPC 18';
			if($altSignUp) $subject='Warteliste - PPC 18';	

		//Zeit ermittelt an dem das Formular ausgefüllt wurde
		$today_Wochentag=date('l');
		$today_Datum=date('d.m.Y');
		$today_Uhrzeit=date('H:i');
		
		//Anmeldung oder Anfrage ausgegeben, je nach Teilnehmeranzahl
		$anmeldung_oder_warteliste='Anmeldung';
			if($altSignUp) $anmeldung_oder_warteliste='Anfrage';	

		$text="
				Hallo {$_POST['vorname']} {$_POST['nachname']},
				
				am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist deine {$anmeldung_oder_warteliste} bei uns eingegangen.
				
				An die Turnierleitung wurden folgende Angaben übermittelt:
				Vorname: {$_POST['vorname']}
				Nachname: {$_POST['nachname']}
				Geschlecht: {$_POST['geschlecht']}
				Kontakt-E-Mail: {$_POST['email']}
				Q-TTR 11.08.2015: {$_POST['ttr']}
				Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
				
				Verein: {$_POST['verein']}				
				Startgebühr: {$startgeld}
				Vorkasse: {$vorkasse}
				
				Für eine schnellere Abwicklung beim Turnier gibt es die Möglichkeit per Vorkasse bis zum 10.09.2015 (Geldeingang) die Startgebühür zu überweisen.
				Kontodaten:
				Betrag: {$vorkasse}
				Verwendungszweck: PPC 2015, {$_POST['nachname']}, {$_POST['vorname']}, {$turnierklasse}, {$_POST['verein']}
				
				Hinweis:
				Die Teilnehmer des Turniers werden zeitnah auf der Homepage veröffentlicht. Zu den einzelnen Teilnehmerfeldern:
				[link]
				Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung via E-mail: [mailadresse]
				
				Vielen Dank!
				
				Mit sportlichen Grüßen
				";
					if($altSignUp) $text="	
											Hallo {$_POST['vorname']} {$_POST['nachname']},
											
											am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist deine {$anmeldung_oder_warteliste} bei uns eingegangen. Dies ist keine Turnierbestätigung!
											Aktuell ist die Teilnehmergrenze in deinem gemeldeten Wettbewerb überschritten und wir können deine Anfrage aktuell leider noch nicht bestätigen. Erfahrungsgemäß sagen aber kurz vor Turnierbeginn noch der ein oder andere Spieler/in ab. In einem solchen Fall würden wir dann umgehend mit dir Kontakt aufnehmen.
											
											An die Turnierleitung wurden vorab aber schon mal folgende Angaben übermittelt:
											Vorname: {$_POST['vorname']}
											Nachname: {$_POST['nachname']}
											Geschlecht: {$_POST['geschlecht']}
											Kontakt-E-Mail: {$_POST['email']}
											Q-TTR 11.08.2015: {$_POST['ttr']}
											Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
											Verein: {$_POST['verein']}
											
											Vielen Dank!
											
											Mit sportlichen Grüßen
";
		
		//UTF-8 Kodierung festlegen
		$mail->CharSet  =  "utf-8"; 
		
		//Absenderadresse der Email setzen
		$mail->setFrom("unsereMailadresse");
		$mail->addReplyTo("unsereMailadresse");
  
		//Name des Abenders setzen
		$mail->FromName = ("unserNamen");
  
		//Empfängeradresse setzen
		$mail->AddAddress ($_POST['email']);
  
		//Betreff der Email setzen
		$mail->Subject = $subject;
 
		//Text der EMail setzen
		$mail->Body = $text;
  
  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo "Die Email konnte nicht gesendet werden";
     echo "Fehler: " . $mail->ErrorInfo;
  }
  else
  {
     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
     echo "Die Email wurde versandt.";
  }
		
	      	$today=date('l; d.m.Y H:i:s');
			$to=$_POST['email'];
			$subject='Bestätigung der Anmeldung';
			if($altSignUp) $subject='Warteliste - Bestätigung der Daten';
			$text='Hallo '.$_POST['vorname'].' '.$_POST['nachname'].',
			
soeben ('.$today.') ist Ihre ';
			if(!$altSignUp)
				$text.='Anmeldung bei uns eingegangen.
				
Hier als Best�tigung und zur Überprüfung die angegebenen Daten:';
			else
				$text.='Anfrage zu einer Turnierteilnahme bei uns eingegangen.
Aktuell ist die Teilnehmergrenze in Ihrem gemeldeten Wettbewerb überschritten und wir k�nnen Ihre Anfrage aktuell noch nicht bestätigen. Erfahrungsgemäß sagen aber kurz vor Turnierbeginn noch der ein oder andere Spieler ab. In einem solchen Fall würden wir dich dann umgehend kontaktieren.
Hier zur Überprüfung die angegebenen Daten:';

			$text.='
Angemeldete Turnierklasse samt Turniertag: '.$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'').'

Vorname: '.$_POST['vorname'].'
Nachname: '.$_POST['nachname'].'
Q-TTR 11.08.2015: '.$_POST['ttr'].'
Verein: '.$_POST['verein'].'
Startgeb�hr: '.$startgeld.'
Vorkasse: '.$vorkasse.'

F�r eine schnellere Abwicklung beim Turnier gibt es die Möglichkeit per Vorkasse bis zum 10.09.2015 (Geldeingang) die Startgebühür zu überweisen.
Kontodaten:
Betrag: '.$vorkasse.'
Verwendungszweck: PPC 2015, '.$_POST['nachname'].', '.$_POST['vorname'].', '.$turnierklasse.', '.$_POST['verein'].' 

Hinweis:
Die Teilnehmer des Turniers werden zeitnah auf der Homepage veröffentlicht. Zu den einzelnen Teilnehmerfeldern:
link/';
			if(!$altSignUp)
				$text.='
Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung via E-mail: mailadresse

Vielen Dank!
Mit freundlichen Grüßen';
			else
				$text.='
				Vielen Dank!
Mit freundlichen Grüßen';
			$header='From: UNS <unsereAdresse>'."\n".'Reply-To: UNS <unsereAdresse>'."\n";
			if(!empty($_POST['email_alt'])) $header .='Cc: '.$_POST['email_alt']."\n";
$header .= "Mime-Version: 1.0\n";
$header .= "Content-Type: text/plain; charset=utf-8\n";
			if(mail($to,'=?UTF-8?B?'.base64_encode($subject).'?=',$text,$header))
			
			{//Mail an die Turnierleitung
			
		//Betreff in der E-Mail ermitteln, je nach Teilnehmeranzahl
		$subject='Neue Anmeldung zum PPC 18';
			if($altSignUp) $subject='Warteliste - Neue Anfrage';	

		//Zeit ermittelt an dem das Formular ausgefüllt wurde
		$today_Wochentag=date('l');
		$today_Datum=date('d.m.Y');
		$today_Uhrzeit=date('H:i');
		
		//Anmeldung oder Anfrage ausgegeben, je nach Teilnehmeranzahl
		$anmeldung_oder_warteliste='Anmeldung';
			if($altSignUp) $anmeldung_oder_warteliste='Anfrage';	

		$text=" ANMELDUNG!!!
				Hallo Turnierleitung,
				
				am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist eine neue Anmeldung eingegangen.
				
				Hier die Angaben des Spielers/der Spielerin::
				Vorname: {$_POST['vorname']}
				Nachname: {$_POST['nachname']}
				Geschlecht: {$_POST['geschlecht']}
				Kontakt-E-Mail: {$_POST['email']}
				E-Mail 2: {$_POST['email_alt']}
				Q-TTR 11.08.2015: {$_POST['ttr']}
				Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
				Geburtsjahr: {$_POST['geburtsjahr']}
				Verein: {$_POST['verein']}				
				
				Mit sportlichen Grüßen
				{$_POST['vorname']} {$_POST['nachname']}
				";
					if($altSignUp) $text="	WARTELISTE!!!
					
											Hallo Turnierleitung,
				
											am {$today_Wochentag} den {$today_Datum} um {$today_Uhrzeit} Uhr ist eine neue Anfrage eingegangen.
				
											Hier die Angaben des Spielers/der Spielerin::
											Vorname: {$_POST['vorname']}
											Nachname: {$_POST['nachname']}
											Geschlecht: {$_POST['geschlecht']}
											Kontakt-E-Mail: {$_POST['email']}
											E-Mail 2: {$_POST['email_alt']}
											Q-TTR 11.08.2015: {$_POST['ttr']}
											Angemeldete Turnierklasse samt Turniertag: ".$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'')."
											Geburtsjahr: {$_POST['geburtsjahr']}
											Verein: {$_POST['verein']}				
				
											Mit sportlichen Grüßen
											{$_POST['vorname']} {$_POST['nachname']}
											";
		
		//UTF-8 Kodierung festlegen
		$mail->CharSet  =  "utf-8"; 
		
		//Absenderadresse der Email setzen
		$mail->setFrom($_POST['email'], $_POST['vorname'].' '.$_POST['nachname']);
		$mail->addReplyTo($_POST['email'], $_POST['vorname'].' '.$_POST['nachname']);
  
		//Name des Abenders setzen
		$mail->FromName = ($_POST['vorname'].' '.$_POST['nachname']);
  
		//Empfängeradresse setzen
		$mail->AddAddress("UnsereAdresse");
  
		//Betreff der Email setzen
		$mail->Subject = $subject;
 
		//Text der EMail setzen
		$mail->Body = $text;
  
  //EMail senden und überprüfen ob sie versandt wurde
  if(!$mail->Send())
  {
     //$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
     echo "Die Email konnte nicht gesendet werden";
     echo "Fehler: " . $mail->ErrorInfo;
  }
  else
  {
     //$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
     echo "Die Email wurde versandt.";
  }			
			
			
$to='unsereAdresse';
			    $to='unsereAdresse';
				$subject='Neue Anmeldung';
				if($altSignUp) $subject='Warteliste - Neue Anfrage';
				$text=''.($altSignUp?'- WARTELISTE -':'').'Es gibt eine neue Anmeldung ('.$today.')

Übermittelte Daten:
Vorname: '.$_POST['vorname'].' 
Nachname: '.$_POST['nachname'].'
Geschlecht: '.$_POST['geschlecht'].'
Geburtsjahr: '.$_POST['geburtsjahr'].'
Kontakt-E-Mail: '.$_POST['email'].'
E-Mail 2: '.$_POST['email_alt'].'
Quartals-TTR vom 11.08.2015: '.$_POST['ttr'].'
Angemeldete Turnierklasse: '.$turnierklassestr.(intval($_POST['turnierklasse_ex'])?' (freiwillig eine Klasse höher)':'').'
Verein: '.$_POST['verein'].'
Bemerkung: '.$_POST['eintrag'].'';
			    $header='From: "'.$_POST['vorname'].' '.$_POST['nachname'].'" <'.$_POST['email'].'>'. "\n".'Reply-To: <'.$_POST['email'].'>'."\n";				
				$header .= "Mime-Version: 1.0\n";
				$header .= "Content-Type: text/plain; charset=utf-8\n";
				if(mail($to,$subject,$text,$header))
				{
					?><p><span class="gruen"><b>Die <?php echo($altSignUp?'Anfrage':'Anmeldung');?> ist bei uns eingegangen!<br/>In deinem Postfach befindet sich eine Bestätigung der <?php echo($altSignUp?'Anfrage':'Anmeldung');?>.</b></span><br/><br/><a class="links" href=index.php title="PPC-Allgemein">Zurück zur Übersicht</a> oder <a class="links" href="http://link" title="Homepage">zur Webseite des</a></p><?php
				}else{?><p><span class="gruen"><b><?php echo($altSignUp?'Anfrage':'Anmeldung');?> erfolgreich</b></span>, <span class="rot"><b>Probleme mit Mailversand.</b></span><br/><br/><a class="links" href=index.php title="PPC-Allgemein">Zurück zur Übersicht</a> oder <a class="links" href="http://link" title="Homepage">zur Webseite</a></p><?php }
			}else{
				?><p><span class="rot"><b>Die <?php echo($altSignUp?'Anfrage':'Anmeldung');?> ist Fehlgeschlagen!<br/>Leider trat beim Mailversand ein unerwartetes Problem auf.</b></span></p><br/><?php
				$show_form=true;
			}
		}else{die('<b>MySQL Error:</b><div class="rot">'.mysql_error().'</div><br/>');$show_form=true;}
	}
}
if($show_form)//zeige Formular
{	//f�hrt das aus, wenn die mail adresse noch ned angegeben wurde oder sonst wie das Formular nicht stimmt.
	//ausgabe bzw. setzen von "turnierklasse" vereinfachen
	//Formular f�r Zusatzangaben wie E-Mail-Adresse, Mitteilung, etc.
	?>
<p>Bitte jetzt folgende Felder ausf�llen. Die Teilnahme in einer h�heren Turnierklasse ist m�glich (bitte angeben), nicht aber ein Start in mehreren Wettbewerben.</p>
<form name="blub" method="post" action="anmeldung-sonntag.php">
<table><tr>
	<td><label for="vorname">Vorname:</label></td>
	<td><input name="vorname" type="text" id="vorname" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['vorname'].'"/>'.$frm_error['vorname']);?></td>
</tr>
<tr>
	<td><label for="nachname">Nachname:</label></td>
	<td><input name="nachname" type="text" id="nachanme" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['nachname'].'"/>'.$frm_error['nachname']);?></td>
</tr>
<tr>
	<td>Geschlecht:</td>
	<td><select name="geschlecht"><option value="1">Bitte ausw�hlen</option><option value="M"<?php echo(($_POST['geschlecht']=='M'?' selected="selected"':''));?>>m�nnlich</option><option value="W"<?php echo(($_POST['geschlecht']=='W'?' selected="selected"':''));?>>weiblich</option></select><?php echo $frm_error['geschlecht'];?></td>
</tr>
<tr>
	<td><label for="ttr">Quartals-TTR vom 11.08.2015:</label></td>
	<td><input name="ttr" type="text" id="ttr" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['ttr'].'"/>'.$frm_error['ttr']);?></td>
</tr>
<tr>
	<td>Turnierklasse:</td>
	<td><select name="turnierklasse">
	<option>Bitte ausw�hlen</option>
	<?php /*Sonntag*/ $sunfull=($num_sonntag>=$max_sonntag?'full"':'gruen"');?>
	<option value="1" class="<?php echo $sunfull;echo($_POST['turnierklasse']==1?'" selected="selected':'');?>">C-Klasse bis TTR 1450 - Turniertag 2 - Sonntag 13. September 2015</option>
	<option value="2" class="<?php echo $sunfull;echo($_POST['turnierklasse']==2?'" selected="selected':'');?>">B-Klasse bis TTR 1600 - Turniertag 2 - Sonntag 13. September 2015</option>
	<option value="3" class="<?php echo $sunfull;echo($_POST['turnierklasse']==3?'" selected="selected':'');?>">A-Klasse ab TTR 1601 - Turniertag 2 - Sonntag 13. September 2015</option>
	</select><?php echo $frm_error['turnierklasse'];?>
</td></tr>
<?php if($sunfull=='full"'){?><tr><td colspan="2" class="rot" style="text-align:center;font-size:80%;">Hinweis: eine oder mehrere Turnierklassen sind derzeit belegt, Anmeldung f�r die gew�nschte Turnierklasse ist dennoch unter Vorbehalt m�glich!</td></tr><?php }?>
<tr><td colspan="2">&nbsp;&nbsp;&nbsp;&nbsp;<input name="turnierklasse_ex" type="checkbox" id="turnierklasse_ex" value="1"<?php echo(intval($_POST['turnierklasse_ex'])?' checked="checked"':'');?>/> <label for="turnierklasse_ex">Ich habe mich freiwillig eine Klasse h�her gemeldet</label></td></tr>
<tr>
	<td><label for="email">E-Mail*:</label></td>
	<td><input name="email" type="text" id="email" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['email'].'"/>'.$frm_error['email']);?></td>
</tr>
<tr>
	<td><label for="email_alt">E-Mail 2 (optional):</label></td>
	<td><input name="email_alt" type="text" id="email_alt" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['email_alt'].'"/>'.$frm_error['email_alt']);?></td>
</tr>
<tr>
	<td><label for="geburtsjahr">Geburtsjahr:</label></td>
	<td><input name="geburtsjahr" type="text" id="geburtsjahr" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['geburtsjahr'].'"/>'.$frm_error['geburtsjahr']);?></td>
</tr>
<tr>
	<td><label for="verein">Verein:</label></td>
	<td><input name="verein" type="text" id="verein" size="70" maxlength="50" class="eingabe" value="<?php echo($_POST['verein'].'"/>'.$frm_error['verein']);?></td>
</tr>
<tr>
	<td valign="top"><label for="email">Anmerkung:</label></td>
	<td><textarea name="eintrag" cols="70" rows="7" id="eintrag" class="eingabe"><?php echo($_POST['eintrag']);?></textarea></td>
</tr>
</table><p><input type="submit" value="Anmeldung abschlie�en"/></form></p><?php
}
?>
*Die Angabe der E-Mail-Adresse ist von N�ten, da wir an diese Adresse die Best�tigungsemail verschicken. 		
				
				
				
				
			    <div class="clear"></div>
					
		    </div>
		    <!-- Ende Linker Inhalt -->
			
<?php
//include des rechten Bereiches
include("include/rechter-inhalt.php");
//include Ende des ganzen Inhaltes
include("include/ende-ganzer-inhalt.php");
//include Fuss
include("include/fuss.php");
//include Ende
include("include/ende.php");
?>

30.03.2015 10:04

15 Jörg

OK, vermutlich erzeugt dein Code Parsing Errors, so dass ini_set() und error_reporting() gar nicht erst zum Zuge kommen - siehe auch:

http://www.gurkcity.de/blog/Fehlermeldungen-in-PHP-werden-nicht-angezeigt-2.html

Probier mal folgenden Code in der .htaccess Datei:

php_flag display_errors on
php_value error_reporting 2047

ansonsten bliebe noch, die Werte direkt in der php.ini anzupassen

30.03.2015 11:50 | geändert: 30.03.2015 11:53

16 tobi

.htaccess mit o.g. Inhalt ändert auch nichts und bringt nur ne weiße Seite.

Ich habe nun meinen Webhoster mal kontaktiert, der meinte ich solle mal in den Logs schauen.

Dort bekomme ich
mod_fcgid: stderr: PHP Parse error: syntax error, unexpected 'else' (T_ELSE) in anmeldung-test-sonntag.php on line 351
aufgezeigt.

30.03.2015 16:43

17 tobi

so, ein Schritt weiter, die alten Bestände habe ich entfernt.

Jetzt wird die Mail versendet. Eigentlich soll ja die Mail mit der Bestätigung an den gesendet werden, welche das Formular ausfüllt, und eine Mail an die Turnierleitung. Aktuell ist die BEstätigung korrekt. Die Mail an die Turnierleitung geht aber zusätzlich auch noch an denjenigen der das Formular ausfüllt, dies dürfte aber nicht der Fall seien. Ich denke dies habe ich auch so nicht hinterlegt..

Desweiteren wird mir nach erfolgreichem Absenden, das ausgefüllt Formlar aufgezeigt, dies möchte ich nicht haben und war vorher auch nicht so.

30.03.2015 17:22

18 Jörg

Jetzt wird die Mail versendet. Eigentlich soll ja die Mail mit der Bestätigung an den gesendet werden, welche das Formular ausfüllt, und eine Mail an die Turnierleitung. Aktuell ist die BEstätigung korrekt. Die Mail an die Turnierleitung geht aber zusätzlich auch noch an denjenigen der das Formular ausfüllt, dies dürfte aber nicht der Fall seien. Ich denke dies habe ich auch so nicht hinterlegt..

Der Fehler hört sich danach an, als ob du nur ein Mail-Objekt gebildet hast, welches du zweimal abgesendet hast. Mit $mail->addAddress() wird eine Empfängeradresse nicht überschrieben, sondern hinzugefügt

Wenn du zwei verschiedene Mails an unterschiedliche Empfänger versendest, solltest du entsprechend zwei Mail-Objekte bilden:

// erste Mail
$mail = new PHPMailer;
/* ... */
$mail->send();

// zweite Mail
$mail = new PHPMailer;
/* ... */
$mail->send();

30.03.2015 18:35 | geändert: 30.03.2015 18:37

19 tobi

Recht hattest du. Löst das doppelte Mailchen. Bisher ging die eine Mail auch immer in meinen Spam-Ordner, dies ist nun auch nicht mehr der Fall.

Wie kann ich das Formular nach erfolgreichem Absenden ausblenden?

Müßte doch eigentlich eingebaut seien, dass es verschwindet.

30.03.2015 20:55

20 Jörg

Wie kann ich das Formular nach erfolgreichem Absenden ausblenden?

Müßte doch eigentlich eingebaut seien, dass es verschwindet.

Dann fehlt entweder an irgendeiner Stelle ein "$show_form = false;" oder eins der "$show_form = true;" ist falsch gesetzt

31.03.2015 09:17