Mehrsprachige WEB-Site mit JavaScript und AJAX

Allgemeines zu Länderkürzel und Sprache


Für die Abkürzung von Ländern und Sprachen gelten unterschiedliche Normen.

Die geografische Einteilung ist in ISO 3166 und sprachliche Einteilung in ISO 639 geregelt.

Weitere Infos im Wikipedia ISO 3166 und Wikipedia ISO 639 geregelt.

Anwendungsbeschreibung


Als Basis dient eine Datenbanktabelle lang.

Feld Typ Inhalt/Bemerkung
lang_id int(10) Fortlaufende Nr und Primary Key
seite varchar(100) Name der Seite
sprache varchar(2) Sprache gem. ISO 639-1
domid varchar(100) ID des Elements
text varchar(500) Text für das Element

In dieser Tabelle werden die notwendigen Daten gespeichert.

Die Daten können über ein Formular von einem Anwender in der Tabelle gepflegt werden.

Für jede Flagge ist ein Eventlistener installiert, der die Funktion lang[Sprache] aufruft. Also für Deutschland langDE

In der Funktion lang.. wird die Flagge für das Land auf "wehende Flagge" gesetzt und alle anderen Flaggen auf normal. Dann wird die Funktion langDBSel für den AJAX-Request aufgerufen.

Die Funktion langDBSel wird die Sprache übergeben. Die WEB-Seite ist in der Funktion fest hinterlegt. Mit diesen beiden Parametern wird die DB-Abfrage mit der Datei langDBSel.php durchgeführt.

Als Ergebnis aus der Datenbank wird ein XML mit den entsprechenden Daten geliefert.

Beispiel:

<lang>
  <id>3</id>
  <seite>mehrsprachigeWEBSeite.html</seite>
  <sprache>DE</sprache>
  <domid>lblVorname</domid>
  <text>Vorname</text>
</lang>

Mit der Funktion langSetzen wird das Ergebnis des AJAX-Request verarbeitet. Jede gelieferte DOM-ID wird gelesen und der Text gesetzt.

Die gewählte Sprache wird in Localstorage abgelegt. Beim nächsten Aufruf der Seite wird diese Sprache wieder eingestellt.

langDE() langDBSel() langSetzen()

Mehrsprachige WEB-Seite


Dieser Abschnitt simuliert die WEB-Seite.

Dies ist Text in Kapitel 1

Dies ist Text in Kapitel 2

deutsch english france