Zur Navigation

Suchformular mit Weiterverarbeitung

1 tobi

Hallo zusammen,

ist es möglich ein Suchformlar zu erstellen, welches nach Ausfüllen, die Datenbank nach Werten durchsucht, diese nach Erfolg in ein weiteres Formular einträgt.
Dieses weitere Formular soll dann noch weitere Berarbeitung zulassen und danach dann an eine weitere Datenbank abgesendet werden und dort gespeichert werden (zusätzlich noch als Email versendet werden).
Ist sowas möglich und wenn ja wie gehe ich am Besten vor?

MfG Tobi

26.03.2011 16:00

2 Jörg Kruse

Ja, klar ist das möglich. Du kannst ein Formular ja vorbelegen, indem du die value Attribute der Eingabefelder mit den Ergebnissen aus der Datenbank füllst.

26.03.2011 19:57

3 tobi

Hallo,

ist dies alles dann in einer Datei zu realisieren oder muß ich da erst suchen und dann in einer anderen Datei verarbeiten?

Aktuell kämpf ich grad mit mir selbst :)
<?php

//Datenbank verbinden
include "zugang_ppc.php.inc";

// Beginn des Inhaltes der einzelnen Seite
error_reporting(E_ALL);

echo "<h1>Vorbereitung zur Anmeldung</h1>\n";

echo "<p>Bitte Vorname und Nachname eingeben. Danach auf \"Suche starten\" klicken.</p>\n";
?>

<form method="post" action="name_suchen.php">
Vorname: <input type="text" name="vorname"><br>
Nachname: <input type="text" name="nachname"><br>
<input type="submit" name="senden" value="Suche starten">
</form>

<?php
// sql-Abfrage 1
$sql1 = "
SELECT id, rang, deutscherRang, vorname, nachname, geschlecht, geburtsjahr, ttr, anzahlEinzel, bezirk, verein, altersklasse, spielklasse, spielposition FROM ttr_rangliste";

$db_erg1 = mysql_query( $sql1 );
if ( ! $db_erg1 )
{
die('Ungültige Abfrage: ' . mysql_error());
}

$anzahl = mysql_num_rows($db_erg1);

$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$verein = $_POST['verein'];
$geschlecht = $_POST['geschlecht'];
$geburtsjahr = $_POST['geburtsjahr'];
$ttr = $_POST['ttr'];
$rang = $_POST['rang'];
$anzahlEinzel = $_POST['anzahlEinzel'];
$bezirk = $_POST['bezirk'];
$altersklasse = $_POST['altersklasse'];

echo "Vorname: $vorname<br>";
echo "Farbe: $nachname<br>";
echo "Verein: $verein<br>";
echo "Geschlecht: $geschlecht<br>";
echo "Geburtsjahr: $geburtsjahr<br>";
echo "TTR-Punkte: $ttr<br>";
echo "TTR-Rang: $rang<br>";
echo "Anzahl Einzel: $anzahlEinzel<br>";
echo "Beziik: $bezirk<br>";
echo "Altersklasse: $altersklasse<br>";

mysql_free_result( $db_erg1 );

// Datenbank schliessen
mysql_close($link);

// include Ende
include "ende.php";
?>

27.03.2011 15:56 | geändert: 27.03.2011 16:06

4 tobi

Hallo,

da ich oben geposteten Beitrag aufgrund deiner Zeitsperre nicht mehr ändern kann, poste ich nun neu. Ich habe mich nun neu rangesetzt und zum einen eine index.php erstellt und eine anmeldung_schritt_2.php

index.php
<?php

// Beginn des Inhaltes der einzelnen Seite
echo "<h1>Anmeldung PPC Erläuterung</h1>\n";
echo "<p>Aufgrund der Einführung der TTR - der Tischtennisrangliste innerhalb von Deutschland - wird die Einstufung für das 14. Ping-Pong-Cafe in Abhängigkeit von TTR gesppielt.</p>\n";
echo "<p>Da nicht jeder Spieler seinen aktuellen TTR-Wert weiß, dieser aber bei der Anmeldung mit angegeben werden muß, haben wir die Anmeldung dieses Jahr ein wenig umgestaltet und das nervige Suchen bleibt dadurch für euch erstpart.</p>\n";
echo "<p>Ablauf der Anmeldung:<br />\n";
echo "Schritt 1: Bitte erst alle hier aufgelisteten Schritte durchlesen<br/>\n";
echo "Schritt 2: In dem erscheinden Formular den Vornamen und den Nachnamen eingeben und danach auf \"Spieler-Suche beginnen\" klicken<br />\n";
echo "Schritt 3: Nach erfolgreicher Suche werden alle gespeicherten Informationen über den gesuchten Spieler aufgelistet<br />\n";
echo "Schritt 4: Bitte danach auf \"auf Spielerdaten übertragen\" klicken<br />\n";
echo "Schritt 5: Es erscheint nun ein neues, fast ausgefülltes Formular, welches noch vervollständigt werden muss, um die Anmeldung endgültig abzuschließen</p>\n";

echo "<p>Um mit der Anmeldemodalitäten zu beginnen, bitte hier klicken: <a href=\"anmeldung_schritt_2.php\">zur Anmeldung</a></p>\n";

// include Ende
include "ende.php";
?>

und hier anmeldung_schritt_2.php
<?php
session_start();

//Datenbank anwählen
include "zugang_ppc.php.inc";

                        $vorname="";
                        $nachname="";
                        $meldung="";

if(isset($_POST['sicherheitscode']))
{
    $code=$_POST['sicherheitscode'];
    $vorname=mysql_real_escape_string($_POST['vorname']);
    $nachname=mysql_real_escape_string($_POST['nachname']);

    $meldung = "";

if(empty($_SESSION['captcha_spam'] ) || $code != $_SESSION['captcha_spam'])
   $meldung .= "<rot><b>Sicherheitscode falsch eingegeben!</b></rot><br />";
if(empty($vorname))
   $meldung .= "<rot><b>Bitte Vornamen eingeben!</b></rot><br />";
if(empty($nachname))
   $meldung .= "<rot><b>Bitte Nachnamen eingeben!</b></rot><br />";

if(empty($meldung))
{

                   $meldung="<p><b>Nachricht wurde verschickt! <br />In Ihrem Postfach befindet sich eine Bestätigung der Kontaktaufnahme.</b></p>\n";

                 }
                 }


mysql_close($link);


                echo "<h1>Anmeldung - Schritt 2</h1>\n";
				if ($meldung != "") {echo $meldung;}
                echo "<form name=\"kontaktform\" action=\"anmeldung_schritt_2.php\" method=\"POST\">\n";
                echo "<table width=\"10\">\n";
                echo "<tr>\n";
                echo "<td align=\"left\" colspan=\"2\"><br />Alle Felder sind Pflichtfelder.</td>\n";
                echo "</tr>\n";
                echo "<tr><td colspan=\"2\">&nbsp;</td></tr>";
				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=\"".$vorname."\"";
                echo "></td>\n";
                echo "</tr>\n";
                echo "<tr>\n";
                echo "<td align=\"left\">Nachname:</td><td align=\"left\"><input name=\"nachname\" type=\"text\" id=\"nachname\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
                echo " value=\"".$nachname."\"";
                echo "></td>\n";
                echo "</tr>\n";

                echo "<tr><td colspan=\"2\">&nbsp;</td></tr>";

//eingefügt aus www.stoppt-den-spam.info
                echo "<tr>\n";
                echo "<td align=\"left\"><img src=\"captcha/captcha.php\" title=\"Sicherheitscode\" alt=\"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\">&nbsp;</td></tr>";
                echo "</table>\n";
                echo "<input name=\"formposten\" type=\"submit\" value=\"Spielersuche beginnen\" class=\"button\" onclick=\"this.value='Bitte warten...';this.enabled=false;\"><br />\n";
                echo "</form>\n";
				echo "<br />\n";

// include Ende
include "ende.php";
?>

Die Frage die sich mir nun stellt, kann die anmeldung_schritt_2.php so bleiben für den weiteren Verlauf, oder sollte in dieser Datei nur das Formular sein und die Prüfung in einer anderen Datei?

27.03.2011 21:16 | geändert: 27.03.2011 21:18

5 Jörg Kruse

ist dies alles dann in einer Datei zu realisieren oder muß ich da erst suchen und dann in einer anderen Datei verarbeiten?

Das ist beides möglich. Im ersteren Fall must du anhand der (nicht) übermittelten $_POST Daten entscheiden, welcher Schritt nun in der einen Datei abgehandelt wird, d.h. welche Formulare angezeigt werden können. Der zweite Fall ist für dich vielleicht einfacher umzusetzen. Der erstere Fall mit nur einer Datei hätte aber den Vorteil, dass du bei fehlerhaften Eingaben noch das Formular des vorangehenden Schrittes anzeigen kannst, ohne das in mehreren Dateien doppelt anlegen zu müssen.

28.03.2011 13:38 | geändert: 28.03.2011 13:38

6 tobi

Hallo Jörg,

was wäre nun ratsamer?
In einer Datei könnte man wohl den Überblick schnell verlieren oder?

28.03.2011 14:49

7 Jörg Kruse

Wenn du (später) noch Fehlerbehandlungen einbauen möchtest, wäre wie gesagt eine einzelne Datei sinnvoll.

Zur leichteren Identifizierung des Schrittes kannst du jeweils auch ein entsprechendes hidden input in das Formular einbauen

<input type="hidden" name="step" value="1" />

Dann kannst du damit schon eine if else Struktur aufbauen

if (! isset[$_POST['step']]) {
    // Erstaufruf der Seite
} else {
    if ($_POST['step'] == 1) {
        // Schritt 1
    } elseif ($_POST['step'] == 2) {
        // Schritt 2
    }
}

28.03.2011 22:52

... 2 Monate später ...

8 tobi

Hallo,

ich mal wieder. Ich habe nun ein such-formular versucht zu realisieren.
spieler-suche funktioniert. Beim abschließenden letzten Schritt, klappt es allerdings noch nicht so richtig. Nach der erfolgreichen Spielersuche, werden die Daten des gesuchten Spielers ausgegeben. Einige sind veränderbar, andere nicht, einige Daten müssen ergänzt werden.
so schaut dies aktuell aus:
html>
<head>
<meta http-equiv="Content-Style-Type" content="text/css" />

<style type="text/css">
/* Angaben im Formluar bei Fehlermeldungen */
rot{
color: #FF0000;
}

/* Angaben im Formluar bei erfolgreicher Anmeldung */
gruen{
color: #009900;
}

/* Angaben im Formluar bei vollen Teilnehmerfeldern */
blau{
color: #0000FF;
}
</style>
</head>
<body>

<?php
include "zugang_ppc.php.inc";

echo "<h1>Schritt 4 - Anmeldung fortsetzen</h1>\n";
echo "<p>4. und letzter Schritt um die Anmeldung erfolgreich abzuschließen.</p>";
echo "<p>Hier sind nun sämtliche hinterlegte Daten aufgelistet (Stand 15.05.2011).<br />";
echo "Einige Felder müssen noch, um die Anmeldung abzuschließen, vervollständigt werden. Einige wenige können auch noch bearbeitet werden, sofern nötig.<br />";
echo "Die gespeicherten TTR-Punkte sind Grundlage für die Einstufung in den entsprechenden Wettbewerb. Im Formular wird unsere Empfehlung sowie der dazugehörige Turniertag übermittet. Eine Teilnahme in einem höhern Wettbewerb ist möglich. Ein Start in mehreren Wettbewerben ist nicht zulässig. Es gilt zudem zu beachten, dass Jugend und D-Klasse am Samstag 10. September 2011 stattfinden. Am Sonntag 11. September 2011 finden die Wettbewerbe C-Klasse, B-Klasse und A-Klasse statt.<br/>";
echo "D-Klasse: 0000-1350 TTR Punkte<br />";
echo "C-Klasse: 1351-1450 TTR-Punkte<br />";
echo "B-Klasse: 1451-1600 TTR-Punkte<br />";
echo "A-Klasse: 1601-9999 TTR-Punkte</p>";
					
if (isset($_POST['spieler_id'])) 
	{
		$spieler_id = mysql_escape_string($_POST['spieler_id']);
		$today = date("l; d.m.Y H:i:s");
		$eintrag="";
		
		$mysql_query = "
		    SELECT *
		    FROM
		            ttr_rangliste
		    WHERE
		            ID = " . $spieler_id . ";
		    ";
		//echo $mysql_query . "<p>";
		$result = mysql_query($mysql_query);
		$num_rows = mysql_num_rows($result);
		//echo $num_rows ."<p>";
		if ( $num_rows == 1) // Spieler gefunden
			{
			$row = mysql_fetch_assoc($result);
			$ttr = $row['ttr'];
			if(!isset($_POST['email']) OR empty($_POST['email']))
			{
			//führt das aus, wenn die mail adresse noch ned angegeben wurde
			echo "Vorname: ". $row['vorname']."<br />";
			echo "Nachname: ". $row['nachname']."<br />";
			echo "Geschlecht: ". $row['geschlecht']."<br />";
			echo "Geburtsjahr: ". $row['geburtsjahr']."<br />";
			echo "Quartals-TTR: ". $ttr."<br />";
			echo "Anzahl Einzel: ". $row['anzahlEinzel']."<br />";
	//		echo "Bezirk: ". $row['bezirk']."<br />";
	//		echo "Verein: ". $row['verein']."<br />";
	//		echo "Altersklasse: ". $row['altersklasse']."<br />";
	//		echo "Spielklasse: ". $row['spielklasse']."<br/ >";
	//		echo "Spielerposition: ". $row['spielposition']."<br />";
		
			if (($row['altersklasse']=='Damen') || ($row['altersklasse']=='Herren')) 
				{
					//TTR Punkte unter 1351 (also 0-1350)
					if ($ttr<1351) {
						echo "Empfohlene Spielklasse: D-Klasse<br />";
						echo "Turniertag: Samstag 10. September 2011<br />";
						}
					//TTR Punkte unter 1451 (also 1351-1450)
					elseif ($ttr<1451) {
						echo "Empfohlene Spielklasse: C-Klasse<br />";
						echo "Turniertag: Sonntag 11. September 2011<br />";
						}
					//TTR Punkte unter 1601 (also 1451-1600)
					elseif ($ttr<1601) {
						echo "Empfohlene Spielklasse: B-Klasse<br />";
						echo "Turniertag: Sonntag 11. September 2011<br />";
						}
					//TTR Punkte über 1601(also 1601-....)
					else {
						echo "Empfohlene Spielklasse: A-Klasse<br /p>";
						echo "Turniertag: Sonntag 11. September 2011<br />";
						}
				}
				elseif ($row['altersklasse']=='') 
				{
						echo "Empfohlene Spielklasse: keine<p>";
				}
				else // Jugend
				{
						echo "Empfohlene Spielklasse: Jugend<br />";
						echo "Turniertag: Samstag 10. September 2011<br />";
				}
				
				//Formular für Zusatzangaben wie E-Mail-Adresse, Mitteilung, etc.	
				echo "<form method=\"post\" action=\"anmeldung_komfort.php\">";
				echo "<table>";
				echo "<tr>\n";
				
				echo "<input type=\"hidden\" name=\"spieler_id\" value=\"" . $_POST['spieler_id'] . "\">";
				echo "<br />";
				echo "<tr>\n";
				echo "<td align=\"left\">Turnierklasse:</td>\n<td align=\"left\">";
				echo "<select name=\"turnierklasse\">\n";
				echo "<option value=\"1\"";if($row['altersklasse']!='' && $row['altersklasse'] != "Herren" && $row['altersklasse'] != "Damen"){echo " selected=selected";} echo ">Jugend - Turniertag 1 - Samstag 10. September 2011</option>";
				echo "<option value=\"2\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr<1351){echo " selected=selected";} echo ">D-Klasse - Turniertag 1 - Samstag 11. September 2011</option>";
				echo "<option value=\"3\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr<1351 && $ttr>=1451){echo " selected=selected";} echo ">C-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";
				echo "<option value=\"4\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr<1451 && $ttr>=1601){echo " selected=selected";} echo ">B-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";
				echo "<option value=\"5\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr>1601){echo " selected=selected";} echo ">A-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";
				echo "</select>\n";
				echo "</td>";
				echo "</tr>\n";	
				echo "<tr>\n";	
				echo "<td align=\"left\">eMail:</td>\n<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>\n<td align=\"left\"><input name=\"verein\" type=\"text\" id=\"verein\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
				echo " value=\"". $row['verein']."".$verein[0]."\"";
				echo "></td>\n";
				echo "</tr>\n";	
				echo "<tr>\n";
				echo "<td align=\"left\">Bezirk:</td>\n<td align=\"left\"><input name=\"bezirk\" type=\"text\" id=\"bezirk\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
				echo " value=\"". $row['bezirk']."".$bezirk[0]."\"";
				echo "></td>\n";
				echo "</tr>\n";	
				echo "<tr>\n";
				echo "<td align=\"left\">Altersklasse:</td>\n<td align=\"left\"><input name=\"altersklasse\" type=\"text\" id=\"altersklasse\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
				echo " value=\"". $row['altersklasse']."".$altersklasse[0]."\"";
				echo "></td>\n";
				echo "</tr>\n";	
				echo "<tr>\n";
				echo "<td align=\"left\">Spielklasse:</td>\n<td align=\"left\"><input name=\"spielklasse\" type=\"text\" id=\"spielklasse\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
				echo " value=\"". $row['spielklasse']."".$spielklasse[0]."\"";
				echo "></td>\n";
				echo "</tr>\n";	
				echo "<tr>\n";
				echo "<td align=\"left\">Spielerposition:</td>\n<td align=\"left\"><input name=\"spielposition\" type=\"text\" id=\"spielposition\" size=\"70\" maxlength=\"50\" class=\"eingabe\"";
				echo " value=\"". $row['spielposition']."".$spielpostion[0]."\"";
				echo "></td>\n";
				echo "</tr>\n";	
				echo "<tr>\n";
				echo "<td align=\"left\" valign=\"top\">Anmerkung:</td>\n<td align=\"left\"><textarea name=\"eintrag\" cols=\"70\" rows=\"7\" id=\"eintrag\" class=\"eingabe\">".$eintrag."</textarea></td>\n";
				echo "</tr>\n";
				echo "</table>";
				echo "<p><input type=\"submit\" value=\"Anmeldung abschließen\" /></form></p>";
			}
			else
			{
				if (($row['altersklasse']=='Damen') || ($row['altersklasse']=='Herren')) 
				{
					//TTR Punkte unter 1351 (also 0-1350)
					if ($ttr<1351) {
						$empfohleneKlasse = 'D-Klasse';
						}
					//TTR Punkte unter 1451 (also 1351-1450)
					elseif ($ttr<1451) {
						$empfohleneKlasse = 'C-Klasse';
						}
					//TTR Punkte unter 1601 (also 1451-1600)
					elseif ($ttr<1601) {
						$empfohleneKlasse = 'B-Klasse';
						}
					//TTR Punkte über 1601(also 1601-....)
					else {
						$empfohleneKlasse = 'A-Klasse';
						}
				}
				elseif ($row['altersklasse']=='') 
				{
						$empfohleneKlasse = '';
				}
				else // Jugend
				{
						$empfohleneKlasse = 'Jugend';
				}
				//wenn die mail adresse vorhanden ist wird das ausgeführt :)
				$mysql_query = 'INSERT INTO `anmeldungen`
				(`vorname`, `nachname`, `geschlecht`, `geburtsjahr`, `ttr`, `anzahlEinzel`, `empfohleneKlasse`, `email`, `verein`, `bezirk`, `altersklasse`, `spielklasse`, `spielposition`, `gemeldeteKlasse`, `anmerkung`, `timestamp`)
				VALUES
				("' . $row['vorname'] . '", "' . $row['nachname'] . '", "' . $row['geschlecht'] . '", "' . $row['geburtsjahr'] . '", "' . $ttr . '", "' . $row['anzahlEinzel'] . '", "' . $empfohleneKlasse . '","' . $_POST['email'] . '", "' . $_POST['verein'] . '", "' . $_POST['bezirk'] . '",  "' . $_POST['altersklasse'] . '", "' . $_POST['spielklasse'] . '", "' . $_POST['spielposition'] . '",  "' . $_POST['turnierklasse'] . '","' . $_POST['eintrag'] . '", NOW())';
				$result = mysql_query($mysql_query);
			
				if($result)
				{
					//Bestätigungsemail an den Anmeldenden
					
					$to = $_POST['email'];
					$subject = 'Bestätigung der Anmeldung zum';
                    $text = '
							<p>Hallo '. $row['vorname'] .' '. $row['nachname'] .',</p>
							<p>soeben ('. $today .') ist Ihre Anmeldung zum  bei uns eingegangen.</p>
							<p>Hier als Bestätigung und zur Überprüfung die angegebenen Daten.</p>
							<p>Vorname: '. $row['vorname'] .'<br />
							Nachname: '. $row['nachname'] .'<br />
							Geschlecht: '. $row['geschlecht'] .'<br />
							Geburtsjahr: '. $row['geburtsjahr'] .'<br />
							Kontakt-E-Mail: '. $_POST['email'] .'<br />
							Quartals-TTR: '. $ttr .'<br />
							Anzahl Einzel: '. $row['anzahlEinzel'] .'<br />
							Empfohlene Turnierklasse: ?<br />
							Angemeldete Turnierklasse: ?<br />							
							Bezirk: '. $row['bezirk'] .'<br />
							Verein: '. $row['verein'] .'<br />
							Altersklasse: '. $row['altersklasse'] .'<br />
							Spielklasse 10/11: '. $row['spielklasse'] .'<br />
							Spielerposition: '. $row['spielposition'] .'<br />
							Bemerkung: '. $_POST['eintrag']. '</p>
							<p>Hinweis: ???</p>
							<p>Falls eine Teilnahme - aus welchen Gründen auch immer - nicht erfolgen kann, bitte um Abmeldung über folgenden Link: http://.de/.php der via E-mail: @.de</p>
							<p>Vielen Dank!</p>
							<p>Mit freundlichen Grüßen<br />
							</p>';				
					$from = 'From: @.de>' . "\n";
					$from .= 'Reply-To: <@.de>' . "\n";
					$from .= 'Content-Type: text/html' . "\n";
					if(mail($to, $subject, $text, $from))
					
					//Mail an die Turnierleitung
					$to = '';
					$subject = 'Neue Anmeldung zum';
                    $text = '
							<p>Es gibt eine neue Anmeldung  </p>
							<p>soeben ('. $today .') gab es eine neue Anmeldung zu unserem.</p>
							<p>Hier angegebenen Daten.</p>
							<p>Vorname: '. $row['vorname'] .'<br />
							Nachname: '. $row['nachname'] .'<br />
							Geschlecht: '. $row['geschlecht'] .'<br />
							Geburtsjahr: '. $row['geburtsjahr'] .'<br />
							Kontakt-E-Mail: '. $_POST['email'] .'<br />
							Quartals-TTR: '. $ttr .'<br />
							Anzahl Einzel: '. $row['anzahlEinzel'] .'<br />
							Empfohlene Turnierklasse: ?<br />
							Angemeldete Turnierklasse: ?<br />							
							Bezirk: '. $row['bezirk'] .'<br />
							Verein: '. $row['verein'] .'<br />
							Altersklasse: '. $row['altersklasse'] .'<br />
							Spielklasse 10/11: '. $row['spielklasse'] .'<br />
							Spielerposition: '. $row['spielposition'] .'<br />
							Bemerkung: '. $_POST['eintrag']. '</p>';				
					$from = 'From: "'. $row['vorname'] .' '. $row['nachname'] .'"  <'. $_POST['email'] .'> ' . "\n";
					$from .= 'Content-Type: text/html' . "\n";
					if(mail($to, $subject, $text, $from))
					
			
					
					{
						echo '<p><gruen><b>Die Anmeldung zum PPC 2011 ist bei uns eingegangen!<br />In Ihrem Postfach befindet sich eine Bestätigung der Anmeldung.</b></gruen><br /><br /><a class=\"links\" href=\"index.php\" title=\"PPC-Allgemein\">Zurück zur Übersicht</a> oder <a class=\"links\" href=\"http://www..de\" title=\" Homepage\">zur Webseite des </a></p';
					}
					else
					{
						echo 'Anmeldung erfolgreich. Probleme mit Mailversand.';
					}
				}
				else
				{
					die(mysql_error());
				}
			}
		}
		
		else //keine Übereinstimmung
		{
		//Evtl noch Zurück-Link auf erstes Formular einfügen...
		echo "Keine Übereinstimmung oder mehrere... Sehr seltsamer Fehler...";
		echo "<p>Es konnte keine Übereinstimmung gefunden werden. Bitte versuche es erneut --> <a href=\"index.php\">Zurück zur Übersicht</a></p>";
		}
	}
	else
	{
	//Wenn Direktaufruf der Datei, dann Hinweis und Link zu Schritt 1
	echo "<p>Bitte Übersichgtsseite lesen und dann die Anmeldung tätigen --> <a href=\"index.php\">Zurück zur Übersicht</a></p>";
	}
?>

</body>
</html>
 
so nun wo happert es? Wenn die Zahl bei TTR erscheint, wird automatisch die empfohlene Turnierklasse aufgezeigt, Weiter im Formular, sollt der Anmeldene die Turneirklasse angeben die er spielen möchte. Hier sollte aber bereits vorausgwählt sein, die Turnierklassen, die ihm empfohlen wird. Aber aus irgendeinem Grunde nicht. Zudem würde ich gerne noch Meldungen einbauen, wenn ein Feld noch nicht ausgefüllt ist, wo muss dies hin?

MfG tobi

28.05.2011 12:43

9 Jörg Kruse

Weiter im Formular, sollt der Anmeldene die Turneirklasse angeben die er spielen möchte. Hier sollte aber bereits vorausgwählt sein, die Turnierklassen, die ihm empfohlen wird. Aber aus irgendeinem Grunde nicht.

Schau dir mal die Bedingung für $ttr an:

                echo "<option value=\"3\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr<1351 && $ttr>=1451){echo " se    lected=selected";} echo ">C-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";

Kleiner als 1351 und gleichzeitig größer gleich 1451 geht nicht.

Zudem würde ich gerne noch Meldungen einbauen, wenn ein Feld noch nicht ausgefüllt ist, wo muss dies hin?

Am besten an der Stelle im HTML-Code, wo die Meldung angezeigt werden soll. Dort kannst du ein entsprechendes if-Konstrukt einbauen.

28.05.2011 19:05

10 tobi

Zitat von Jörg
[quote]
Kleiner als 1351 und gleichzeitig größer gleich 1451 geht nicht.

ist mir wohl beim Zahlen verändern ein Fehler unterlaufen, so sollte es nun passen:

echo "<option value=\"1\"";if($row['altersklasse']!='' && $row['altersklasse'] != "Herren" && $row['altersklasse'] != "Damen"){echo " selected=selected";} echo ">Jugend - Turniertag 1 - Samstag 10. September 2011</option>";
echo "<option value=\"2\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr<1351){echo " selected=selected";} echo ">D-Klasse - Turniertag 1 - Samstag 11. September 2011</option>";
echo "<option value=\"3\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr>1350 && $ttr<=1451){echo " selected=selected";} echo ">C-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";
echo "<option value=\"4\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr>1451 && $ttr<=1601){echo " selected=selected";} echo ">B-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";
echo "<option value=\"5\"";if(($row['altersklasse'] == "Herren" || $row['altersklasse'] == "Damen") && $ttr>1601){echo " selected=selected";} echo ">A-Klasse - Turniertag 2 - Sonntag 11. September 2011</option>";

zu den Abfragen, wird wohl so nicht gehen oder? (Auszug aus meinem bereits geposteten PHP-Code):
if (isset($_POST['spieler_id'])) 
	{
		$spieler_id = mysql_escape_string($_POST['spieler_id']);
		$today = date("l; d.m.Y H:i:s");
		$eintrag="";
		
		$mysql_query = "
		    SELECT *
		    FROM
		            ttr_rangliste
		    WHERE
		            ID = " . $spieler_id . ";
		    ";
		//echo $mysql_query . "<p>";
		$result = mysql_query($mysql_query);
		$num_rows = mysql_num_rows($result);
		//echo $num_rows ."<p>";
		if ( $num_rows == 1) // Spieler gefunden
			{
			$row = mysql_fetch_assoc($result);
			$ttr = $row['ttr'];
			if(!isset($_POST['email']) OR empty($_POST['email']))
                        if(!isset($_POST['verein']) OR empty($_POST['verein']))
			if(!isset($_POST['bezirk']) OR empty($_POST['bezirk']))
                        if(!isset($_POST['spielklasse']) OR empty($_POST['spielklasse']))
...

29.05.2011 12:19