Hi liebe Gemeinde!
Ich bin selbst kein absoluter Neuling in PHP und SQL, doch irgendwie komm ich mit meinem aktuellem Vorhaben nicht groß weiter.
Ich habe selbst schon viele kleine Sachen in PHP und SQL realisiert, bin jedoch leider seit einigen Jahren nicht mehr am programmieren gewesen. Man mag mir daher vielleicht ein wenig Unsicherheit und ein paar doofe Fragen verzeihen.
Zu meinem Vorhaben
Ich spiele in einer kleinen Gruppe Karten (Magic the Gathering). In dieser Gruppe spielen wir überwiegend einen bestimmten Typus. Wir treffen uns 1x die Woche und spielen zwischen 2 und 12 Partien, je nachdem wie viele von uns da sind. Da ich Statistiken sehr mag würde ich nun gerne eine kleine Datenbank für unsere Spiele erzeugen.
Die Datenbank selbst habe ich auf meiner MySQL-DB bereits erstellt und logisch verknüpft. Es gibt Tabellen für die unterschiedlichen User sowie Ihre Kartenwahl (die spielt dabei ebenfalls eine Rolle) zudem eine Tabelle für die verschiedenen Spielorte und alle weiteren Information eines Spiels.
Die DB an sich steht, ebenfalls sehe ich gegenwärtig kein Problem darin die Inhalte via Charts auszuwerten und optisch zugänglich zu machen. Hierfür will ich später fertige JS-Charts von Highcharts nutzen.
Das derzeit einzige Problem ist das befüllen der Datenbank. Ich möchte es möglich machen, dass nicht nur ich die Informationen Hard in die DB werfen kann, sondern dass auch andere Leute die Spielinfos eintragen können.
Dabei treten für mich gerade folgende Probleme auf:
Ich möchte ein Match mit allen Informationen möglichst in einem einzigem Formular eintragen. Die Informationen sind jedoch von einander abhängig.
Beispiel:
Spieldatum - Spielstartzeit - Spielendzeit (diese Werte sind einfach einzutragen und können auch leer gelassen werden)
Spielort -> Dies soll eine Dropdown-Liste sein die aus einer anderen Tabelle (edh_locations) gefüllt wird.
Unter diesen Standartinformationen sollen dann gleiche Felder auftauchen:
Spieler_01 -> enthält alle Einträge aus edh_user und edh_spieler
General_01 -> enthält alle Einträge aus edh_generals
Ergebnis_01 -> Dropdown mit allen Möglichkeiten aus edh_result
Spieler_02 -> enthält alle Einträge aus edh_user und edh_spieler die nicht in
Spieler_01 ausgewählt wurden.
General_02 -> enthält alle Einträge aus edh_generals (gleiche Generäle sind möglich, gleiche Spieler nicht)
Ergebnis_02 -> Dropdown mit allen Möglichkeiten aus edh_result
Darunter soll dann ein Button mit "weiteren Spieler anfügen" sein, der die Spieler_0x, General_0x, Ergebnis_0x erzeugt.
Ich hoffe ihr könnt mir dabei ein wenig weiterhelfen. Ich bekomme es zwar hin eine Dropbox mit Auswahlmöglichkeiten zu erschaffen, aber nicht mit Auswahlpunkten die aus einer Tabelle gezogen werden und sich auch noch in der Laufzeit ändern.
Wenn ein Spieler ausgewählt wird, müssen alle Auswahllisten entsprechend geändert werden.
Hoffe es ist zu verstehen was ich meine.
Das zweite Problem ist die Erzeugung des SQL-Update Befehls für den Post-Button, da insgesamt zwei Tabellen befüllt werden müssen:
edh_matches (location_id, date und time) und edh_match_infos (je Spieler eine Zeile mit: User_id/player_id, general_id und result_id)
wenn es also 5 Spieler sind, muss eine Zeile in edh_matches eingetragen werden und 5 Zeilen in edh_match_infos.
Hoffe irgendjemand kann mir ein wenig damit helfen. Danke sehr fürs Lesen und im Vorraus für eure Mühe!
Ergänzung: edh_users und edh_players hat den Hintergrund, dass ich die Nutzer der Webseite (alle User in edh_users) direkt als Spieler verwendbar machen möchte. Da es aber immer Mitspieler gibt, die auf meiner Webseite nicht angemeldet sind, brauche ich auch eine edh_players Tabelle in der ich die Spieler eintragen kann, die keinem User zugeordnet sind. Falls da jemand eine schönere Lösung kennt, bin ich jederzeit offen dafür!
