Multi Sprachige Webseite

vielen dank, dann brauche ich ja nur noch die variabele hexeln ^^ vielen dank, aber dennoh ist meine bisherige sprachentabelle für den am liebsten hätte ich die von wbb2 -.- ist viel einfacher ^^

aber dennoch danke
 
wenn du uns sagst, wie das WBB2.X das gelöst hat, können wir dir sicherlich helfen.

Bedenke: Nicht jeder verwendet es, nicht jeder kennt es.
 
also ich könnte euch screenshots zeigen... und auch aus der tabelle... aber wie genau das dort abläuft keine ahnung.

wünschte ich würde es verstehen...
 
...


aus Erfahrung (lol, naja "Erfahrung" nennen wirs besser) rate ich dir zur Sprachdatei.
Über die URL (oder sonst wie) wird die Sprache übergeben (de/en/fr/käsetoast/etc.).
Damit includest du eine kleine PHP-Datei in der ein Array steht. In diesem Array sind alle Texte gespeichert.
 
PowerCheat hat gesagt.:
...aber dennoh ist meine bisherige sprachentabelle für den am liebsten hätte ich die von wbb2 -.- ist viel einfacher
PowerCheat hat gesagt.:
also ich könnte euch screenshots zeigen... und auch aus der tabelle... aber wie genau das dort abläuft keine ahnung.

wünschte ich würde es verstehen...
Entschuldige bitte, Du verstehst nicht, wie das im wbb2 funktioniert, behauptest aber, es sei einfacher?!
Also, die von Warrior beschriebene Lösung ist doch einfach, klar, übersichtlich und gut zu warten, wenn mal Änderungen anstehen.
 
Mach doch einfach Sprachdateien, die über definierte Konstanten einen Stringwert speichern. Die Sprache würde ich einfach beim Klick eines Links übergeben z.B. index.php?lang=de oder index.php?lang=en usw.

In deiner (in diesem Beispiel) index-datei includest du dann eine lang-de.php oder eine lang-en.php usw. Also lang-var.php (var ist in dem Fall die Sprachenvariable). Ich würde den Wert der Variablen dann noch in ein Cookie oder in einer Session speichern, damit man nicht immer die Variable manuell übergeben muss und so immer die am Anfang ausgewählte Sprache eingestellt bleibt.

Ich hoffe ich konnte helfen.

Tseng
 
Hmmm...
Ich hab für mein neues Projekt auch eine datenbankbasierte Version geschrieben und sie mit einer dateibezogenen verglichen, mein Fazit:
- Ladezeit unterscheidet sich nicht groß wenn man in die DB dateispezifisch einträgt
- Einfache Organisation der Elemente in einer Datenbank (erstrecht dateispezifisch :))
- Unübersichtlichkeit in Dateien
- Mögliche Änderungen in der Datei könnten unter umständen durch unvorsichtigkeit zu ungewollten Fehlern führen

Naja, nur so ein paar Anregungen, aber was am meisten für die DB spricht ist meiner Meinung nach das einfache Verwalten der einzelnen Elemente :)

/€dit:
Anbei habe ich die Sprache (also de,en,nl,...) in einer Session gespeichert die nur geändert wird wenn ich beispielsweise $_GET['lang'] übergebe, bei mir funktionierte das dann super :)
 
Zuletzt bearbeitet:
erst ein mal vielen dank, ich finde es mal toll ein thema aufgetan zu haben wo viele mit reden können und wollen :)

also nun ich würde mich freuen wenn Jon meine PN beantwortet.

2. kann mir einer evtl sagen wie ich es amchen muss wenn ich in einer tabelle das drin habe:
id sprache feldname text
1 de index_welcome Herzlich Willkommen auf http://www.racing-on.net.tc
2 en index_welcome Cordially welcomes on http://www.racing-on.net.tc
3 fr index_welcome Cordialement accueil http://www.racing-on.net.tc

wie kann ich es machen das jedoch beim aufzählen der textvariaben (Feldname) nur einmal aufgezeigt wird, in einer liste und dahinter steht in welchen sprachen es exestiert?

danke schon mal!
 
Huiuiui, da klingeln aber bei mir alle Alarmglocken, wenn ich dein Tabellendesign sehe. So, wie du das machst, verschwendest du unnötigen Speicherplatz. Mach es lieber so:
Code:
id  feldname       text_de                                       text_en                                     text_fr
1   index_welcome  Herzlich Willkommen auf www.racing-on.net.tc  Cordially welcomes on www.racing-on.net.tc  Cordialement accueil www.racing-on.net.tc
Dann sollte sich auch dein Problem erübrigen, da du ja nur noch die Spalte mit der jeweils richtigen Sprache auslesen musst.
 
Zurück