Alex: Idee zur Mehrsprachigkeit

Beitrag lesen

Hallo,

Schlechte Idee - bei einer Tippfehlerkorrektur musst du dann mindestens 2 Stellen angreifen.

Das Übersetzungsfile und die Stelle(n) wo der aufruf darauf erfolgt.

»»
Das ist klar. Wie gesagt, erscheint mir die andere Lösung wie ich sie angesprochen habe sehr unübersichtlich. Genau aus diesem Grund mochte ich die Hauptsprache 1:1 in dem Skript haben. (Gut wäre auch, wenn der PHP-Editor die Keys (z.B. 'error_username' oder so) irgendwie mit dem Sprachfile verlinken würde - dann wäre es ja wieder übersichtlicher. Kennst du einen, der das kann?

Ansonsten ist es mir dieser Nachteil aufgrund der Vorteile schon wert. Vor allem, da durch die Fehlermeldungen an mich ja auch nichts verloren gehen kann.

Am übersichtlichsten wäre es sicher, die Wörter/Texte in einer DB zu speichern und für jeder Sprache eine Spalte zu haben.

Sehr unkluge Idee, wenn du beim hinzufügen einer Sprache ein Feld ergänzen musst, hast du beim normalisieren des Datenmodells einen Fehler gemacht.

Ich würde nicht sagen, dass ich der absolute Datenbank-Profi bin, aber doch, dass ich mich in dem Bereich recht gut auskenne. Ich sehe da kein Problem mit der Normalisierung. Klär mich bitte auf, was du meinst.

Es gibt z.B.   ID | DE | EN
Wenn ich jetzt noch Französisch hinzufügen will, mache ich ne neue Spalte FR rein. Da steht dann bei den derzeitigen Einträgen erstmal überall NULL.

Dann kann ich nach und nach die Felder der FR-Spalte füllen.

Wo ist da das Normalisierungsproblem?

Ich hab mir überlegt, das ganze in der DB zu organisieren.

XML ist dafür imho wesentlich besser geeignet - vor allem, wenn man bedenkt, dass dir vermutlich für ein Caching-System ebenfalls das Know-How fehlt, wenn dir schon dir Normalisierung der Datenstruktur ein Problem bereitet.

So problematisch ist es sicher nicht. Ich finde es aber wie gesagt in einer Tabelle übersichtlicher als in einer anderen Form. Aber evtl. kann man ja ein XML daraus generieren.

Anschließend wird dann aus dem DB-Inhalt (bei jeder Änderung) eine statische PHP-Include-Datei generiert, wo die Daten in einen Array kommen (oder in ein Textfile).

Da kannst du gleich wieder Textfiles nehmen :)

Genau das will ich ja aufgrund der Übersichtlichkeit vermeiden. Wenn man sich die MySQL-Tabelle in Tabellenform anschaut und so bearbeitet, ist es sehr übersichtlich und man muss sich nicht durch andere Files wühlen.

Klar kann man diese Tabellenansicht und Änderbarkeit auch hinbekommen, wenn man die Textfiles enstprechend ausliest und im Browser darstellen lässt. Aber bei MySQL mit phpmyadmin ist das halt nicht nötig. Dann muss man nur noch - wenn man nicht direkt aus der DB lesen will - nachher ein File im entsprechenden Format erstellen.

Die beiden Threads könnten dich auch interessieren:
http://forum.de.selfhtml.org/archiv/2011/7/t205748/
http://forum.de.selfhtml.org/archiv/2011/2/t203078/

Kenne ich schon, aber danke.

Gruß

alex