Brauche ein script für hp....bitte helfen

Hallo an alle Experten.

Meine Webseite ist auf Deutsch schon gut, aber ich merke ja
immer wieder, das auch „andere“ Leute auf die Seite finden.
Woher auch immer die kommen - die meisten verstehen kein
Deutsch und möchten, das ich diese auch in Englisch mache.

Naja.

Ich möchte nicht jede Seite in Englisch nochmal tippen.

Gibt es ein Script, das ich verwenden kann um folgendes zu
tun:

  • Der Benutzer wählt am Anfang eine Sprache aus. (Deutsch
    oder Englisch)
  • Innerhalb der Seiten kann er zwischen den Sprachen
    wechseln.

zb language=„deutsch“ (wenn er am anfang deutsch klickt - language=„englisch“ - wenn er englisch anklickt - diese müssen später abgefragt werden können - also mit variablen oder so.) wird
in jeder seite mit text die abfrage getätigt welche sprache er
am anfang gewählt hat so zb:

if language=„deutsch“ then document.write(´hallo leute´)
else if language =„englisch“ then document.write(´hello
poeple´) - ALSO SO UNGEFÄHR solls sein

so möchte ichs haben. GEHT DAS???
(Bin noch Anfänger in Javascript)

Danke schonma…

Hallo Eyezz Only,

Mehrsprachigkeit ist ein großes Thema. Ich gehe mal davon aus, dass du auf deinen Seite(n) (wo sind die denn?) etwas mehr Inhalt hast als in deinem Posting. Also …

Sind deine Seiten alle statisches HTML?
Dann führt kein Weg an einer Übersetzung jeder einzelnen Seiten vorbei. Ob per Script oder von Hand macht da wohl kaum einen Unterschied.

Per Script alle Einträge „on demand“ zu ändern würde bedeuten alle vorhandenen Texte umzuändern. Zumindest solltest du dann alle „Texte“ über Ihre IDs ansprechen. Das Script per onClick an ein Ikon zu hängen ist dann der geringste Teil der Arbeit.

Dazu kommt, das man manche Texte in verschiedenen Seiten identisch braucht. Das ist dann sehr aufwändig nachzuhalten, da es injeder Seite gemacht werden muss.

Eigentlich sollte man sowas anders lösen. Dazu zwei Ansätze.

In einer DB werden zu einer id (die ID sollte „sprechend“ sein, wir nehmen dazu den deutschen original Text) die verschiedenen Übersetzungen abgelegt. Die baut man dann in seine Seite ein. Oder man legt alle Texte (auch andere Inhalte…) in XML (eine je Sprache oder ein „Tag“ je Sprache) Dateien ab, die man dann verwendet. Gesteuert über einen Parameter der Seite kann man das dann wahlweise anziehen.

Lange Rede kutzer Sinn: per Script ist möglich, aber nicht mal eben, nicht zukunftsträchtig und schwer zu administrieren. Andere Lösungen sind erstmal noch aufwändiger, aber danach sehr leicht zu erweitern und sind einfach zu administrieren.

P.S.: Oder hat jemand da noch einen besseren Ansatz?

mfg

Dirk

Hallo Dirk. Danke für diesen sehr anspruchsvollen Text…:wink:

Meine Seite ist: www.eyezzonly.gmxhome.de

Ich habe jetzt schon folgendes probiert (bin leider noch Anfänger in Javascript):
Also bei click auf deutsche Flagge wird folgendes ausgeführt:
language=„GER“
und beim click auf die englische/usa-flagge:
language=„USA“

So. per anweisung habe ich in den Seiten dann versucht, diese variable auszulesen und mit einer if-Anweisung zu ermitteln:

if (language=„GER“) {
document.write („Der Webmaster“)
}

if (language=„USA“) {
document.write („The Webmaster“)
}

Aber auf der Hauptseite kommt dann nach meinem Bild „Der WebmasterTheWebmaster“.
Komisch…

aber das funzt halt nicht. wüsste gerne warum. Ich denke mal, das die Variable aus der vorhergehenden Seite nicht in diese übernommen wird, also quasi verschwindet.(RICHTIG???) Wie bekomme ich das hin?

Und mit den Texten mach Dir keine Sorgen…Muss ja ALLE noch auf Englisch schreiben. Und das geht schnell bei mir…

Danke schonmal für deine Antowrt

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Eyezz,

Ich gehe mal davon aus, das du die Sprache auch an andere Seiten weitergeben willst. Dazu wird an den Aufruf der Seite ein Parameter gehängt:

/Pfad/meineSeite.html?language=deu

den ließt man dann aus:

if(Request.Params[„language“]!=null)
language = Request.Params[„language“].ToString();
else
language = „deu“;
switch (language )
{
case „deu“ : setzeText(„Ich bin der deutsche Text“);
break;
case „eng“ : setzeText(„I am english text“);
break;
default: setzeText(„Standard?“);
break;
}

Dein Click auf die Flagge dann so abarbeiten:

window.location.replace(„neueSeite.html?language=“ + language);

mfg

Dirk

BOAH…uff…usw…

Das dat so kompliziert wird, hätte ich ja nicht gedacht…naja…
Die Seiten sind ja eigentlich alle in HTML geschrieben.

DANKE DIR Dirk. Das ist das was ich gesucht habe. Nun noch ne Frage…

ich weiss leider nicht wie ich seitenaufrufe bzw weiterleitungen (automatische)
mit javascript mache…habe bisher alles mit html gemacht…

kannste mir ma helfen? (und schau auf meine HP. dann weisst du wenigstens, womit du es zu tun hast…

Ein dickes Danke erstmal…sehr beeindruckend

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Eyezz,

Ich mache das so:

window.location.replace(„loginUser.aspx?“ + paramstr);

mfg

Dirk

Hallo
Mein Vorschlag, nimm einen Html Editor wie frontpage express. Damit brauchst Du nicht in den Code zu gehen und kannst einfach den Text ändern/übersetzen wo es sein muss. So will ich es machen.
Das mit der Startseite, Flagge usw. hast Du ja schon selbst erwähnt.
Matthias