Location: PHPKode > projects > Raidmaxx > char.php
<?php
# raidmaxx / char.php
# Created on 27.03.2008
# Sven Neidahl
# http://www.neidahl.de

#
# Anmeldeüberprüfung
#
if (!$_SESSION['username'])
	{
	echo "<p align='center'><br><br><font color='red'>Nicht genehmigter Seitenaufruf ... !</font><br><br><a href='index.php?section=startseite'>Zur Anmeldung</a></p>";
	exit(0);
	}
echo "<br><p align=\"center\"><b>Charaktermanagement</b><br><br>";
#
# Anzeige der normalen Auswahl ( Default Menü ) und Basisdaten anzeigen
#
$buffer_username = $_SESSION['username'];
$sql_query = "select id from benutzer where name like '$buffer_username' limit 1";
$ergebnis_benutzer = $datenbank -> query($sql_query);
$row = mysql_fetch_assoc($ergebnis_benutzer);
$buffer_benutzer_id = $row['id'];
$sql_query = "select name from chars where benutzer_id = '$buffer_benutzer_id'";
$ergebnis_char = $datenbank -> query($sql_query);
$row = mysql_num_rows($ergebnis_char);
echo "<p align=\"center\">" . $row . " Charakter(e) eingetragen</p><br>";
#
# Seitenaktionen, je nach Menüauswahl / Formularaktion
#
if (isset($_GET['subaction']) )
	{
	switch($_GET['subaction'])
		{
		#
		# Accountdaten ( User ) modifizieren
		#
		case "account":
			echo "<p align=\"center\">Accountdaten &auml;ndern ... BETA Version, Funktion noch nicht implementiert !</p>";
		break;
		#
		# Charakterauswahl zum editieren anzeigen
		#
		case "charedit":
			$sql_query = "select name from chars where benutzer_id = '$buffer_benutzer_id'";
			$ergebnis = $datenbank -> query($sql_query);
			#
			# Hinweis, falls kein Charakter zugeordnet ist
			#
			if (mysql_num_rows($ergebnis)=="0")
				{
				echo "<p align=\"center\">Es wurde noch kein Charakter zugeordnet ...</p>";
				}
			else {
				$counter = 1;
				echo "<form action=\"index.php?section=char&subaction=charedit_selected\" name=\"charedit\" method=\"post\">";
				while ($row = mysql_fetch_assoc($ergebnis))
					{
					echo "<p align=\"center\">";
					#
					# Erstauswahl als markiert setzen
					#
					if ($counter == 1)
						{
						echo "Charakter Nr." . $counter . " : " . $row['name'] . "<input type=\"radio\" name=\"charwahl\" value=\"" . $row['name'] . "\" checked>";
						}
					else {
						echo "Charakter Nr." . $counter . " : " . $row['name'] . "<input type=\"radio\" name=\"charwahl\" value=\"" . $row['name'] . "\">";
						}
					echo "</p>";
					$counter++;
					}
				echo "<p align=\"center\"><input type=\"submit\" value=\"Gew&auml;hlten Charakter anpassen\"></p>";
				echo "</form>";
				}
		break;
		#
		# Charakterdaten modifizieren, nachdem Charakter ausgewählt wurde
		#
		case "charedit_selected":
			$sql_query = "select klasse, rasse, level, gilde, name, skillung from chars where benutzer_id = '$buffer_benutzer_id'";
			$ergebnis_char = $datenbank -> query($sql_query);
			$row = mysql_fetch_assoc($ergebnis_char);
			?>
			<div align="center">
			<form action="index.php?section=char&subaction=charadd_db_write&update=1" name="charedit_selected" method="post">
				<table border="0">
					<tr><td>Charaktername:</td><td><input name="name" type="text" size="25" maxlength="20"
					<?php
					echo "value=\"" . $row['name'] ."\" disabled></td></tr>";
					?>
					<tr><td>Neuen Charakterlevel eingeben:</td><td>
						<select name="level" size="1">
							<?php
							for ($lauf=1; $lauf<=70; $lauf++)
								{
								if ($lauf == $row['level'])
									{
									echo "<option selected>" . $lauf . "</option>";
									}
								else {
									echo "<option>" . $lauf . "</option>";
									}
								}
							?>
						</select>
					</td></tr>
					<tr><td>Neuen Gildennamen eingeben:</td><td><input name="gilde" type="text" size="25" maxlength="20"
					<?php
					echo "value=\"" . $row['gilde'] ."\"></td></tr>";
					?>
					<tr><td>Neue Skillung eingeben:</td><td><input name="skillung" type="text" size="25" maxlength="20"
					<?php
					echo "value=\"" . $row['skillung'] ."\"></td></tr>";
					?>
					<input type="hidden" name="klasse"
					<?php
					echo "value=\"" . $row['klasse'] ."\">";
					?>
					<input type="hidden" name="rasse"
					<?php
					echo "value=\"" . $row['rasse'] ."\">";
					?>
					<input type="hidden" name="update" value="1">
				</table>
				<br>
				<input type="submit" value="Charakter aktualisieren">
			</form>
			</div>
			<?php
		break;
		
		#
		# Charakterdaten eingeben
		#
		case "charadd":
			?>
			<div align="center">
			<form action="index.php?section=char&subaction=charadd_db_write" name="charadd" method="post">
				<table border="0">
					<tr><td>Charakternamen eingeben:</td><td><input name="name" type="text" size="25" maxlength="20"></td></tr>
					<tr><td>Charkterklasse w&auml;hlen:</td><td>
						<input type="radio" name="klasse" value="1" checked><img src='bilder/icons/magier.gif' align='absmiddle' alt='Magier'>
						<input type="radio" name="klasse" value="2"><img src='bilder/icons/druide.gif' align='absmiddle' alt='Druide'>
						<input type="radio" name="klasse" value="3"><img src='bilder/icons/hexenmeister.gif' align='absmiddle' alt='Hexenmeister'>
						<input type="radio" name="klasse" value="4"><img src='bilder/icons/krieger.gif' align='absmiddle' alt='Krieger'>
						<input type="radio" name="klasse" value="5"><img src='bilder/icons/hunter.gif' align='absmiddle' alt='J&auml;ger'>
						<input type="radio" name="klasse" value="6"><img src='bilder/icons/paladin.gif' align='absmiddle' alt='Paladin'>
						<input type="radio" name="klasse" value="7"><img src='bilder/icons/priester.gif' align='absmiddle' alt='Priester'>
						<input type="radio" name="klasse" value="8"><img src='bilder/icons/schamane.gif' align='absmiddle' alt='Schamane'>
						<input type="radio" name="klasse" value="9"><img src='bilder/icons/schurke.gif' align='absmiddle' alt='Schurke'>
					</td></tr>
					<tr><td>Charakterrasse eingeben:</td><td>
						<?php
						#
						# Abhängig von der Fraktionsauswahl in der Datenbank, 
						# die entsprechenden Rassen zur Auwahl anzeigen
						#
						$sql_query_fraktion="select fraktion from globals";
						$ergebnis_fraktion = $datenbank -> query($sql_query_fraktion);
						if ($row['fraktion']==0)
							{
							?>
							<select name="rasse" size="1">
								<option selected>Blutelf</option>
								<option>Orc</option>
								<option>Taure</option>
								<option>Troll</option>
								<option>Untot</option>
							</select>
							<?php
							}
						else {
							?>
							<select name="rasse" size="1">
								<option selected>Draenai</option>
								<option>Gnom</option>
								<option>Mensch</option>
								<option>Nachtelf</option>
								<option>Zwerg</option>
							</select>
							<?php
							}
						?>
					</td></tr>
					<tr><td>Charakterlevel eingeben:</td><td>
						<select name="level" size="1">
							<?php
							for ($lauf=1; $lauf<=70; $lauf++)
								{
								echo "<option>" . $lauf . "</option>";
								}
								?>
						</select>
					</td></tr>
					<tr><td>Gildenname eingeben:</td><td><input name="gilde" type="text" size="25" maxlength="20"></td></tr>
					<tr><td>Skillung eingeben:</td><td><input name="skillung" type="text" size="25" maxlength="20"></td></tr>
				</table>
				<br>
				<input type="submit" value="Charakter anlegen">
			</form>
			</div>
			<?php
		break;
		#
		# Charakterdaten in DB schreiben
		#
		case "charadd_db_write":
			$buffer_name=$_POST['name'];
			$buffer_klasse=$_POST['klasse'];
			$buffer_rasse=$_POST['rasse'];
			$buffer_level=$_POST['level'];
			$buffer_gilde=$_POST['gilde'];
			$buffer_skillung=$_POST['skillung'];
			
			#
			# Usernamen auslesen und Zuordnung zwischen User-ID und Char-ID herstellen
			# $buffer_username wurde zu Beginn festgelegt
			#
			$sql_query = "select id from benutzer where name = '$buffer_username'";
			$ergebnis = $datenbank -> query($sql_query);
			$row = mysql_fetch_assoc($ergebnis);
			$buffer_benutzer_id = $row['id'];
			
			#
			# Daten sichern ( Entscheidung ob ändern oder neu )
			#
			if ($_POST['update']==1)
				{
				$sql_query = "update chars set klasse='$buffer_klasse', rasse='$buffer_rasse', level='$buffer_level', benutzer_id='$buffer_benutzer_id', gilde='$buffer_gilde', name='$buffer_name', skillung='$buffer_skillung' where benutzer_id = '$buffer_benutzer_id'";
				}
			else {
				$sql_query = "insert into chars ( klasse, rasse, level, benutzer_id, gilde, name, skillung ) values ( '$buffer_klasse', '$buffer_rasse', '$buffer_level', '$buffer_benutzer_id', '$buffer_gilde', '$buffer_name', '$buffer_skillung')";
				}
			echo $sql_query;
			$ergebnis = $datenbank -> query($sql_query);
			echo "<p align=\"center\">Neuer Charakter wurde eingetragen ...<p>";
		break;
		#
		# Charakter löschen
		#
		case "chardelete";
			echo "<p align=\"center\">Charakter l&ouml;schen ... BETA Version, Funktion noch nicht implementiert !</p>";
		break;
		}
	}

?>
<ul>
<li><a href="index.php?section=char&subaction=account">Accountdaten &auml;ndern</a></li>
<li><a href="index.php?section=char&subaction=charadd">Charakter hinzuf&uuml;gen</a></li>
<li><a href="index.php?section=char&subaction=charedit">Charakter bearbeiten</a></li>
<li><a href="index.php?section=char&subaction=chardelete">Charakter l&ouml;schen</a></li>
</ul>
Return current item: Raidmaxx