kostenloser Webspace werbefrei: lima-city


Wie kann man bei SQL-Statement den Feldname variabel machen???

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    pesl

    Kostenloser Webspace von pesl, auf Homepage erstellen warten

    pesl hat kostenlosen Webspace.

    Ich hab das Internet durchforstet, aber keine Antwort gefunden.

    Ich habe ein Liga-Kreuztabelle erstellt, wo jedes Team als Feldname und in einem Feld 'Mannschaften' auftaucht.

    Über ein Formular habe ich eine Variable bekommen mit einem Teamnamen.
    Jetzt will ich in dieser Spalte ein Update vornehmen.

    UPDATE MeineTabelle SET '$Team' [<--Diese Stelle soll variabel sein] = '$EinErgebnis' WHERE ...[WHERE funktioniert]

    Ich bitte um Hilfe.

    Vieleicht kann mir auch jemand eine andere Tabellenstruktur empfehlen.



    Beitrag geändert: 29.8.2007 20:37:58 von pesl

    Beitrag geändert: 29.8.2007 20:39:16 von pesl

    Beitrag geändert: 29.8.2007 20:43:10 von pesl
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Ich verstehe nicht ganz, warum du den Datenbanknamen unbedingt dynamisch verändern möchtest...
    Du hast also für jedes Team eine Tabelle? Was ist in den Tabellen drin?
    Erklär mal die Struktur deines Systems, sodass wir dir evtl raten können, wie man es effizienter lösen könnte...
    Derzeit kann ich sagen: Lege eine tabelle "teams" an und gib jedem team einen Datensatz mit einer ID. Wenn du in anderen Tabellen die Zugehörigkeit eines Datensatzes zu einem Team festlegen möchtest, erstelle im Datensatz ein Feld "team" und speichere darin die ID des zugehörigen Teams.

    Ansonsten sollte es eigentlich auch funktionieren (auch wenns unüblich ist), wenn du den Datenbanknamen per Variable festlegst... Nimm mal die einfachen Anführungszeichen vor und hinter dem Tabellennamen weg...


    gruß
    ferdinand24
  4. Autor dieses Themas

    pesl

    Kostenloser Webspace von pesl, auf Homepage erstellen warten

    pesl hat kostenlosen Webspace.

    Erstmal danke für deine schnelle Antwort.

    Den Datenbanknamen will ich nicht verändern. Genauso wenig den Tabellennamen.
    Sondern nur den Spaltennamen.

    Hier die genauere Beschreibung meiner Tabelle 'Spielplan'(es ist eine).

    Ich habe 11 Spalten mit 10 Mannschaftsnamen und eine mit 'Mannschaft'. In der Spalte mit 'Mannschaft' habe ich die 10 Teamnamen nochmal drin, sodass ich 10 Zeilen bekommen habe.

    Jetzt sieht es aus wie eine Kreuztabelle.

    Ich will, dass man in die freien Zellen dann die Ergebnisse schreiben kann. Da die Spieler die Ergebnisse selbst eingeben sollen, weiß ich nicht welche Spalte ich bearbeiten soll. Deshalb will ich das variabel machen.

    Ich hoffe, du konntest dich besser mit der Struktur vertraut machen und hoffe auf weiteren Rat.

    Beitrag geändert: 29.8.2007 21:27:30 von pesl

    Beitrag geändert: 29.8.2007 21:28:25 von pesl

    EDIT (by thoba): Doppelpost gelöscht. 2. Posting:

    Ich habe noch eine Kleinigkeit. Kann es Probleme machen, wenn ein Spaltenname durch ein Leerzeichen getrennt ist?

    Er scheint nur den hinteren Teil übernehmen zu wollen. Ich hab das Leerzeichen im Spaltennamen weggemacht und jetzt geht es.

    Kann man ihm trotzdem sagen, dass man den ganzen string verwertet haben will?

    So gehts -> "UPDATE tabelle SET $team = '$resultat' WHERE Mannschaft ='$anderesteam'" wenn $team = "InterMailand"

    so gehts nicht ->"UPDATE tabelle SET $team = '$resultat' WHERE Mannschaft ='$anderesteam'" wenn $team = "Inter Mailand"


    Beitrag geändert: 29.8.2007 21:55:00 von pesl

    Beitrag geändert: 30.8.2007 13:52:16 von thoba
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!