hallo,
ich hab heute meine funktion des forumlares mal wieder getestet, denn bald muß es richtig laufen.
leider ist mir ein kleiner bug aufgefallen.
nehmen wir an ich habe ein formular für zwei spieler, ich fülle bei beiden spielern alle felder aus, bis auf das feld email.
fülle zusätzlich bei spieler 2 das emailfeld aus und gebe den sicherheits code ein so erfolgt kein versand, da ja bei spieler 1 noch ein feld leer ist. gebe ich allerdings bei spieler 1 die email an, lasse es bei spieler 2 frei und gebe den richtigen sicherheitscode ein erfolgt leider der versand und kommt eine meldung dass bei spieler 2 noch email fehlt.
eigentlich soll er zu diesem zeitpunkt noch nciht versenden, da ja das komplette formular noch nicht ausgefüllt ist.
leider grüble ich den ganzen morgen schon rum woran dass liegt.
hier der komplette code:
//Datenbank verbinden
error_reporting(E_ALL);
$today = date("l; d.m.Y H:i:s");
$nachname="";
$vorname="";
$email="";
$verein="";
$spielklasse="";
$position="";
$turnierklasse="";
$eintrag="";
$timestamp="";
$meldung="";
$meldungok="";
$nachnamex = array('', '');
$vornamex = array('', '');
$emailx = array('', '');
$vereinx = array('', '');
$spielklassex = array('', '');
$positionx = array('', '');
$turnierklassex = array('', '');
$eintragx = array('', '');
$meldung = "";
$meldungok = "";
// Werte für Listenfeld
$turnierklasse1 = array(
"1"=>"Damen",
"2"=>"Herren A",
"3"=>"Herren B",
"4"=>"Herren C"
);
$listeTK[0] = '';
$listeTK[0] .= "\t<option value='' selected='selected'>Bitte auswählen</option>\n";
if (empty($_POST['turnierklasse'])) {
foreach ($turnierklasse1 as $keyTK => $valuTK) {
$listeTK[0] .= "\t<option value=\"".$keyTK."\">".$valuTK."</option>\n";
}
}
$listeTK[1] = $listeTK[0];
if(isset($_POST['sicherheitscode']))
{
$code=$_POST['sicherheitscode'];
$anzahl = 2;
$nachnamex =($_POST['nachname']);
$vornamex = ($_POST['vorname']);
$emailx = ($_POST['email']);
$vereinx = ($_POST['verein']);
$spielklassex = ($_POST['spielklasse']);
$positionx = ($_POST['position']);
$turnierklassex = ($_POST['turnierklasse']);
$eintragx = ($_POST["eintrag"]);
if(empty($_SESSION['captcha_spam'] ) || $code != $_SESSION['captcha_spam'])
$meldung .= "<rot><b>Sicherheitscode falsch eingegeben!</b></rot><br>";
$i = 0;
while ($i < $anzahl) {
$nachname = mysql_real_escape_string($nachnamex[$i]);
$vorname = mysql_real_escape_string($vornamex[$i]);
$email = mysql_real_escape_string($emailx[$i]);
$verein = mysql_real_escape_string($vereinx[$i]);
$spielklasse = mysql_real_escape_string($spielklassex[$i]);
$position = mysql_real_escape_string($positionx[$i]);
$turnierklasse5 = mysql_real_escape_string($turnierklassex[$i]);
$eintrag = mysql_real_escape_string($eintragx[$i]);
if (!empty($_POST['turnierklasse'])) {
foreach ($turnierklasse1 as $keyTK => $valuTK) {
if ($keyTK != '-' && ($keyTK == $turnierklassex[$i])){
$listeTK[$i] .= "\t<option value=\"".$keyTK."\" selected='selected'>".$valuTK."</option>\n";
} else {
$listeTK[$i] .= "\t<option value=\"".$keyTK."\">".$valuTK."</option>\n";
}// ende for
}
}
if(empty($nachnamex[$i]))
$meldung .= "<rot><b>Bitte Nachnamen bei Spieler " . ($i + 1) . " eingeben!</b></rot><br>";
if(empty($vornamex[$i]))
$meldung .= "<rot><b>Bitte Vornamen bei Spieler " . ($i + 1) . " eingeben!</b></rot><br>";
if(empty($emailx[$i]) || !ereg('^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.([a-zA-Z]){2,4})$', $email))
$meldung .= "<rot><b>Bitte eine gültige Emailadresse bei Spieler " . ($i + 1) . " angeben!</b></rot><br>";
if(empty($vereinx[$i]))
$meldung .= "<rot><b>Bitte Verein bei Spieler " . ($i + 1) . " eingeben!</b></rot><br>";
if(empty($spielklassex[$i]))
$meldung .= "<rot><b>Bitte Spielklasse bei Spieler " . ($i + 1) . " eingeben!</b></rot><br>";
if(empty($positionx[$i]))
$meldung .= "<rot><b>Bitte Position bei Spieler " . ($i + 1) . " eingeben!</b></rot><br>";
if(empty($turnierklassex[$i]))
$meldung .= "<rot><b>Bitte richtige Turnierklasse bei Spieler " . ($i + 1) . " auswählen (Damen, Herren A, Herren B oder Herren C)!</b></rot><br>";
if(empty($meldung))
{
$meldungok="<p><rot><b>Die Anmeldungen zum PPC 2009 sind bei uns eingegangen!<br>In Ihrem Postfach befindet sich eine Bestätigung der Anmeldung.</b></rot><br><a href=\"ppc2009Anmeldung.php\">Zurück zur Übersicht</a></p>\n";
//Anmeldemail Turnierleitung
$subject="Neue Anmeldung zum PPC 2009";
$mailcontent="Es gibt eine neue Anmeldung zum PPC 12 2009.\n\n";
$mailcontent.="Maileingang: ".$today."\n\n";
$mailcontent.="Hier die Daten des Teilnehmers:\n\n";
$mailcontent.="Nachame: ".$nachname."\n\n";
$mailcontent.="Vorname: ".$vorname."\n\n";
$mailcontent.="eMail: ".$email."\n\n";
$mailcontent.="Verein: ".$verein."\n\n";
$mailcontent.="Spielklasse 09/10: ".$spielklasse."\n\n";
$mailcontent.="Position: ".$position."\n\n";
$mailcontent.="Turnierklasse: ".$turnierklasse1[$turnierklasse5]."\n\n";
$mailcontent.="Bemerkung: \n".$eintrag."\n\n";
$mailcontent=ereg_replace("(<br>)","\n",$mailcontent);
$mailcontent=str_replace(""","\"",$mailcontent);
$mailcontent=str_replace("&","&",$mailcontent);
$mailcontent=str_replace("<","<",$mailcontent);
$mailcontent=str_replace(">",">",$mailcontent);
$from_address="From: \"".$nachname.", ".$vorname."\" <".$email.">\n";
mail("email@123.de",$subject,$mailcontent,$from_address);
// mail("123@123.de",$subject,$mailcontent,$from_address);
//Bestätigungsmail Anmeldender
$subject="Bestätigung der Anmeldung zum PPC 2009";
$mailcontent="Hallo ".$vorname." ".$nachname.",<br><br>Soeben (".$today.") ist Ihre Anmeldung zum Ping-Café Am Schelmenbusch 12 2009 bei uns eingegangen. Vielen Dank. <br><br>Hier als Bestätigung und zur Überprüfung die angegebenen Daten.\n\n";
$mailcontent.="Nachname: ".$nachname."\n\n";
$mailcontent.="Vorname: ".$vorname."\n\n";
$mailcontent.="eMail: ".$email."\n\n";
$mailcontent.="Verein: ".$verein."\n\n";
$mailcontent.="Spielklasse 09/10: ".$spielklasse."\n\n";
$mailcontent.="Position: ".$position."\n\n";
$mailcontent.="Turnierklasse: ".$turnierklasse1[$turnierklasse5]."\n\n";
$mailcontent.="Bemerkung: \n".$eintrag."\n\n";
$mailcontent.="Kleiner Hinweis: Die Teilnehmer des Turniers werden zeitnah auf der Homepage veröffentlicht\n\n";
$mailcontent.="Die Teilnehmer der Damen: http://123.de/ppc2009Damen.php\n\n";
$mailcontent.="Die Teilnehmer der Herren A: http://123.de/ppc2009HerrenA.php\n\n";
$mailcontent.="Die Teilnehmer der Herren B: http://123.de/ppc2009HerrenB.php\n\n";
$mailcontent.="Die Teilnehmer der Herren C: http://123.de/ppc2009HerrenC.php\n\n";
$mailcontent.="Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung über folgenden Link: http://123.de/ppc2009Abmeldung.php oder via E-mail: 123@123.de\n\n";
$mailcontent.="Vielen Dank!\n\n";
$mailcontent.="Mit freundlichen Grüßen<br>123\n\n";
$mailcontent=ereg_replace("(<br>)","\n",$mailcontent);
$mailcontent=str_replace(""","\"",$mailcontent);
$mailcontent=str_replace("&","&",$mailcontent);
$mailcontent=str_replace("<","<",$mailcontent);
$mailcontent=str_replace(">",">",$mailcontent);
$from_address="From: \"123\" <123c@123.de>\n";
mail("email@123.de",$subject,$mailcontent,$from_address);
mail("\"".$nachname."\" <".$email.">",$subject,$mailcontent,$from_address);
mysql_query("INSERT INTO ppc_anmeldungen
(nachname, vorname, email, verein, spielklasse, position, turnierklasse, eintrag, timestamp)
VALUES
('$nachname', '$vorname', '$email', '$verein', '$spielklasse', '$position', '$turnierklasse5', '$eintrag', NOW())")
or die(mysql_error());
}
$i++;
}
}
mysql_close($link);
echo "<div id=\"box1\">\n";
echo "<p><b><font size=\"+2\">Anmeldung zum Ping-Pong-Café am Schelmenbusch 2009</font></b></p>\n";
if ($meldung != "") {echo $meldung;}
if ($meldungok != "") {echo $meldungok;}
echo "<br>\n";
echo "<hr noshade size=\"2\">\n";
echo "<center>\n";
echo "<form name=\"anmeldungform\" action=\"ppc2009Anmeldung_spieler2.php\" method=\"POST\">\n";
echo "<table width=\"10\">\n";
echo "<tr>\n";
echo "<td align=\"center\" colspan=\"2\"><font size=\"+1\">Spieler 1:</font></td>\n";
echo "</tr>\n";
echo "<tr><td colspan=\"2\"> </td></tr>";
echo "<td align=\"left\">Nachname:</td><td align=\"left\"><input name=\"nachname[]\" type=\"text\" id=\"name\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$nachnamex[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Vorname:</td><td align=\"left\"><input name=\"vorname[]\" type=\"text\" id=\"vorname\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$vornamex[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">eMail:</td><td align=\"left\"><input name=\"email[]\" type=\"text\" id=\"email\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$emailx[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Verein:</td><td align=\"left\"><input name=\"verein[]\" type=\"text\" id=\"verein\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$vereinx[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Spielklasse 09/10:</td><td align=\"left\"><input name=\"spielklasse[]\" type=\"text\" id=\"spielklasse\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$spielklassex[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Position:</td><td align=\"left\"><input name=\"position[]\" type=\"text\" id=\"position\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$positionx[0]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Turnierklasse:</td><td align=\"left\"><select name=\"turnierklasse[]\" id =\"turnierklasse\"> ".$listeTK[0]."</select>\n";
echo "</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\" valign=\"top\">Anmerkung:</td><td align=\"left\"><textarea name=\"eintrag[]\" cols=\"70\" rows=\"7\" id=\"eintrag\" class=\"eingabe\">".$eintragx[0]."</textarea></td>\n";
echo "</tr>\n";
echo "<tr><td colspan=\"2\"> </td></tr>";
echo "<td align=\"left\"><img src=\"bilder/ppc/ppc_anmeldung.gif\" width=\"140\" height=\"40\" border=\"0\"></td>\n";
echo "<tr>\n";
echo "</table>\n";
echo "<hr noshade size=\"2\">\n";
echo "<table width=\"10\">\n";
echo "<tr>\n";
echo "</tr>\n";
echo "<td align=\"center\" colspan=\"2\"><font size=\"+1\">Spieler 2:</font></td>\n";
echo "</tr>\n";
echo "<tr><td colspan=\"2\"> </td></tr>";
echo "<td align=\"left\">Nachname:</td><td align=\"left\"><input name=\"nachname[]\" type=\"text\" id=\"name\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$nachnamex[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Vorname:</td><td align=\"left\"><input name=\"vorname[]\" type=\"text\" id=\"vorname\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$vornamex[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">eMail:</td><td align=\"left\"><input name=\"email[]\" type=\"text\" id=\"email\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$emailx[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Verein:</td><td align=\"left\"><input name=\"verein[]\" type=\"text\" id=\"verein\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$vereinx[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Spielklasse 09/10:</td><td align=\"left\"><input name=\"spielklasse[]\" type=\"text\" id=\"spielklasse\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$spielklassex[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Position:</td><td align=\"left\"><input name=\"position[]\" type=\"text\" id=\"position\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
echo " value=\"".$positionx[1]."\"";
echo "></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\">Turnierklasse:</td><td align=\"left\"><select name=\"turnierklasse[]\" id =\"turnierklasse\"> ".$listeTK[1]."</select>\n";
echo "</td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td align=\"left\" valign=\"top\">Anmerkung:</td><td align=\"left\"><textarea name=\"eintrag[]\" cols=\"70\" rows=\"7\" id=\"eintrag\" class=\"eingabe\">".$eintragx[1]."</textarea></td>\n";
echo "</tr>\n";
echo "<tr><td colspan=\"2\"> </td></tr>";
//eingefügt aus www.stoppt-den-spam.info
echo "<tr>\n";
echo "<td align=\"left\"><img src=\"captcha/captcha.php\" border=\"0\" title=\"Sicherheitscode\"></td>\n";
echo "<td align=\"right\">Sicherheitscode vom Bild: <input type=\"text\" name=\"sicherheitscode\" size=\"5\"></td>\n";
echo "</tr>\n";
//hier ende des einfügens
echo "<tr><td colspan=\"2\"> </td></tr>";
echo "</table>\n";
echo "<input name=\"formposten\" type=\"submit\" value=\"Abschicken\" class=\"button\" onclick=\"this.value='Bitte warten...';this.enabled=false;\"></center><br>\n";
echo "</form>\n";
echo "</center>\n";
include "aktualisierung.php";
echo "</div>\n";
quasi: Erst alles prüfen, wenn alles ok --> dann versenden
vllt könnte mich jemand ein wenig weisen!
danke