#1 4. April 2006 Ich bin gerade dabei ein ligascript für ein spiel als lernprojekt zu entwickeln. das script baut auf php und mysql auf. ich hab mir jetzt ein paar gedanken über den datenbankaufbau gemacht. Meine frage ist jetzt ob der aufbau wie ich es gemacht habe sinnvoll ist, oder was für verbesserungsvorschläge ihr hättet. Code: Datenbankname: ligascript Wer ist wer? Tabelle : player player_id Id jedes players und nummer für pn's player_name Nick jedes players player_pw Player-pw player_regdate registrierungsdatum player_clan clan-name player_rank Rang des spielers player_email Email des players player_icq Icq-nummer player_msn MSN-nummer Wer ist wo? Tabelle: player_liga player_id liga_id id der liga oder ligen in der er spielt pl_regdate seit wann ist er in der liga? Wer ist wie? Tabelle: player_statistic player_id played_games Wie viele Spiele hat er schon? won_games wie viele hat er gewonnen? lost_games wie viele hat er gewonnen? player_points wie viele punkte hat er? Tabelle:liga liga_id id der liga liga_name name der liga (liga 0 ist "keine liga") liga_player Anzahl der player in der liga so das sind die tabellen di ich bis jetzt hab. Code: CREATE TABLE player ( player_id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, player_name VARCHAR(50) NOT NULL, player_pw VARCHAR(50) NOT NULL, player_regdate DATE NOT NULL, player_clan VARCHAR(20), player_rank VARCHAR(15), player_email VARCHAR(150) NOT NULL, player_icq VARCHAR(20), player_msn VARCHAR(30), PRIMARY KEY(player_id) ); CREATE TABLE player_liga ( player_id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, liga_id TINYINT UNSIGNED NOT NULL DEFAULT '0', pl_regdate DATE NOT NULL, PRIMARY KEY(player_id) ); CREATE TABLE player_statistic ( player_id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, played_games INT(6) UNSIGNED NOT NULL DEFAULT '0', won_games INT(6) UNSIGNED NOT NULL DEFAULT '0', lost_games INT(6) UNSIGNED NOT NULL DEFAULT '0', player_points INT NOT NULL DEFAULT '0', PRIMARY KEY(player_id) ); CREATE TABLE liga_id ( liga_id TINYINT UNSIGNED NOT NULL DEFAULT '0', liga_name VARCHAR(30) NOT NULL, liga_player INT UNSIGNED NOT NULL DEFAULT '0', PRIMARY KEY(liga_id) );
#2 4. April 2006 naja, ohne jetz alles genau zu durchdenken(grad net soviel zeit) wirste dein 1. prob bekommen, sobald ein Spieler 2 Ligen hat... wie willste das denn in 1 Feld schreiben? Das sollteste evtl. nochmal überdenken!
#3 4. April 2006 dafür ist die tabelle da Code: Wer ist wo? Tabelle: player_liga player_id liga_id id der liga oder ligen in der er spielt pl_regdate seit wann ist er in der liga?
#4 6. April 2006 moin Hallö, also ich kann da jetzt mal keine Fehler finden. WAs aber sicher bei so einem recht großen Projekt doch sinnvoll wäre ein ER Diagramm zu erstellen. Um damit mögliche Fehler heraus zuarbeiten. Was mir aber aufgefallen ist: Wenn ein Spieler nun in 2 Ligen drin ist, sollen dann wirklich aus beiden Ligen gewonnene und verlorerne matches zusammen gezählt werden? Einbisschen doof.. Wenn z.b. In Cs 1.6, 3 mal gewonnen 0 verlorer. In WC3 0 gewonnen 10 mal verloreren ... dann würde er ja 3:10 stats haben, die dann aber wirklich keine Aussage darüber bringen wie gut er wirklich in CS oder wc3 ist ... bis denne clude
#5 8. April 2006 ah danke das ist eine gute beobachtung. aber das liga script beschränkt sich auf nur ein Spiel mit verschidenen ladders. 10 haste mfg toschk