Veröffentlicht 21. März 200520 j Hallo, ich habe ein Weiterleitunsgskript, was leider nur mit dem IE sauber funktioniert. Toll wäre es, wenn es auch für Firefox usw. funktionieren würde. Hat jemand Erfahrungen oder Ideen?! Danke euch! Hier das Skript: ..... <head> <title> Forward </title> <script type="text/javascript"> if(navigator.userLanguage.indexOf("de")>-1) { document.write("<META content='0;url=http://XXXXXXa' http-equiv='refresh'>"); } else { document.write("<META content='0;url=http://XXXXXXb' http-equiv='refresh'>"); } </script> </head> ........
21. März 200520 j warum wertest du das nicht Serverseitig aus? Vorrausgesetzt, du verwendest eine Serverseitige Sprache... Gruß, Markus
21. März 200520 j Mit PHP könnte man das so machen: <?php if (getenv("HTTP_ACCEPT_LANGUAGE") == "de"){ //mach dies und jenes } else{ //sonst mach lieber das } ?>[/PHP]
21. März 200520 j es soll rein javascipt (html) sein... wie stellst du dir das sonst vor? danke Jo mit PHP halt den UserAgent auslesen: http://php3.de/manual/de/reserved.variables.php 'HTTP_USER_AGENT' Der Inhalt des User_Agent:-Headers der aktuellen Anforderung, so vorhanden. Dies ist ein String, der den Typ und Namen des Browsers angibt, der auf die Seite zugreift. Ein typisches Beispiel ist: Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586). Unter anderem kann man diesen Wert mit get_browser() auslesen, um die Ausgabe einer Seite auf den verwendeten Browser abzustimmen. Oder auch <?php if ( strpos($_SERVER['HTTP_USER_AGENT'], 'Gecko') ) { if ( strpos($_SERVER['HTTP_USER_AGENT'], 'Netscape') ) { $browser = 'Netscape (Gecko/Netscape)'; } else if ( strpos($_SERVER['HTTP_USER_AGENT'], 'Firefox') ) { $browser = 'Mozilla Firefox (Gecko/Firefox)'; } else { $browser = 'Mozilla (Gecko/Mozilla)'; } } else if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') ) { if ( strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') ) { $browser = 'Opera (MSIE/Opera/Compatible)'; } else { $browser = 'Internet Explorer (MSIE/Compatible)'; } } else { $browser = 'Others browsers'; } echo $browser; ?> [/PHP]
21. März 200520 j @Kills: Wenn ich es richtig verstanden hab dann soll nur die verwendete sprache ermittelt werden. Dein Code ermittelt aber den Browsertyp oder? Falls es sich hier um die Sprache handelt dann würde ich es aber nicht mit dieser automatischen sprachwahl machen. Denn man kann nur die Sprach-Version des Browsers ermitteln und nicht die des OS. Es kann doch z.B. sein dass jemand aus Deutschland z.B. die englische Netscape Version verwendet. Dann würde ihm die englische Seite angezeigt, obwohl er lieber die Deutsche hätte. Von daher wäre die klassische Art der Sprachwahl, d.h. per klick auf eine englische flagge für englisch usw., besser...
21. März 200520 j @Kills: Wenn ich es richtig verstanden hab dann soll nur die verwendete sprache ermittelt werden. Dein Code ermittelt aber den Browsertyp oder? Ach sorry, ich hatte den Thread schon gestern gelesen und hatte da wohl was falsches im Kopf... :hells:
21. März 200520 j dann man so: <script type="text/javascript"> var sLocation = "http://XXXXXXa'"; if(navigator.userLanguage.indexOf("de")>-1) { sLocation = "http://XXXXXXb"; } self.location = sLocation; </script> Ob diese Abfrage if(navigator.userLanguage.indexOf("de")>-1) das richtige liefert, weiss ich nicht! Die hab ich einfach von dir übernommen... Gruß, Markus
22. März 200520 j JavaScript laesst sich clientseitig ausschalten. Wenn als Webserver ein Apache verwendet wird, dann gehts auch ohne Programmiersprachen. .htaccess-Datei und alternative Inhalte: sieh http://de.selfhtml.org/diverses/htaccess.htm#alternative_inhalte
23. März 200520 j Gut zu wissen hades Nicht vergessen, dabei ist noch dies zu beachten: Gehen Sie mit dieser Möglichkeit der Lenkung jedoch bedächtig um. Bedenken Sie, dass nicht jeder Besucher Ihres Web-Projekts frei in der Wahl seines Browsers ist. Ein deutschsprachiger Besucher in einem englischen Internetcafe hat auch bei besuchten spanischen Seiten eigene Vorstellungen bei der Wahl der Sprache. Sehen Sie gegebenenfalls eine clientseitige Auswahl der Sprache vor.
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.