Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Spracheinstellungen des Browsers in PHP auslesen

Diskussion: Spracheinstellungen des Browsers in PHP auslesen im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Folgendes Problem, ich will das die Besucher meiner Webseite je nach ihren Spracheinstellungen im Browser auf eine unterschiedliche URL ...

Antwort
Alt 09.05.06, 15:16   #1 (permalink)
cr
Guest
 
Likes:
Standard Spracheinstellungen des Browsers in PHP auslesen

Anzeige

Folgendes Problem, ich will das die Besucher meiner Webseite je nach ihren Spracheinstellungen im Browser auf eine unterschiedliche URL geleitet werden. Ich habe eine Javascriptlösung wurde jedoch PHP bevorzugen.

Code:
<?php
$sprache=substr($HTTP_ACCEPT_LANGUAGE, 0, 2); 
if ($sprache == "de") 
	{
	echo "<meta http-equiv=Refresh content=\"0; url=http://url.de/de/\">"; 
	exit;
	}
if ($sprache == "en") 
	{
	echo "<meta http-equiv=Refresh content=\"0; url=http://url.de/en/\">"; 
	exit;
	}
echo "<meta http-equiv=Refresh content=\"0; url=http://url.de/en/\">"; 
exit; 
?>
So sieht mein bisheriger Code aus der jedoch anscheinend immer auf die englische Seite umleitet. Wenn ich mir die Lang Variable ausgeben lasse erhalte ich lediglich 1, auch habe ich versucht das ganze ausschliesslich in PHP zu lösen mit Hilfe von header() was jedoch noch weniger funkionierte, getestete Browser sind Epiphany und Firefox. Würde mich freuen wenn jemand Ideen hätte wie das Problem zu lösen ist.

ps. Der Apache bietet ja auch die Möglichkeit der Spracherkennung hat damit schon jemand Erfahrung gemacht?
  Mit Zitat antworten
Alt 09.05.06, 15:23   #2 (permalink)
Administrator
 
Benutzerbild von Mackz
 
Registriert seit: 02.10.01
Mackz Leistung: Pentium IMackz Leistung: Pentium I
Likes: 30
Standard

Hi.
Hast du es in PHP schon mit $_SERVER['HTTP_ACCEPT_LANGUAGE'] probiert? Damit müsste das zu machen sein.
Schau mal hier vorbei: http://techpatterns.com/downloads/ph..._detection.php
da findest du ein PHP Language Detection Script zum Download.

Zitat:
Original von cr
ich versucht das ganze ausschliesslich in PHP zu lösen mit Hilfe von header() was jedoch noch weniger funkionierte
header() eignet sich auch nicht zum Auslesen, sondern nur zum Senden.
__________________
RL sux big time... auch 2012!

Deleting pr0n is like killing your best friend

[HaBo] bei Facebook - Werde Fan
Mackz ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 09.05.06, 15:30   #3 (permalink)
 
Registriert seit: 09.05.06
Jonny48000 Leistung: Facit NTK
Likes: 0
Standard

Ich hab bei einer Seite von mir $_SERVER['HTTP_ACCEPT_LANGUAGE'] auch benutzt, aber der gibt bei mir immer de aus, obwohl ich ein Türkisches Betriebssystem hab...und alle ´programme und selbst die Schrift auf Türkisch gestellt ist...warum?
Jonny48000 ist offline   Mit Zitat antworten
Alt 09.05.06, 15:40   #4 (permalink)
Administrator
 
Benutzerbild von Mackz
 
Registriert seit: 02.10.01
Mackz Leistung: Pentium IMackz Leistung: Pentium I
Likes: 30
Standard

Da musst du was falsch gemacht haben.

Wenn ich im Browser die Sprache auf englisch umstelle, erhalte ich z.B. en-us,de
ansonsten auf deutsch de,en-us. Funktioniert also. Du musst nur die primäre Sprache auslesen, die als erstes angegeben ist.

@cr:
Was mir gerade noch auffällt, du kannst die Umleitung besser mit header("Location: http://www.url.de/de"); anstatt mit einem Meta Refresh machen. Das funktioniert auch, falls man im Browser Meta Refresh deaktiviert haben sollte ...
__________________
RL sux big time... auch 2012!

Deleting pr0n is like killing your best friend

[HaBo] bei Facebook - Werde Fan
Mackz ist offline   Mit Zitat antworten
Alt 09.05.06, 16:05   #5 (permalink)
 
Registriert seit: 09.05.06
Jonny48000 Leistung: Facit NTK
Likes: 0
Standard

Ich hab es mehrmals überprüft, und keinen Fehler gefunden
Das script was ich hab:

$language->name = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
if (!empty($_REQUEST["lang"])) {
$language->name = $_REQUEST["lang"];
}
if (is_file('languages/'.strtolower($language->name).'.php')) {

} else {
$language->name = "de";
}

Sowohl English und türkisch gibt der nicht raus, da kann ich die sprache soviel ändern wie ich will da ändert sich nichts der gibt immer de raus.
Jonny48000 ist offline   Mit Zitat antworten
Alt 09.05.06, 16:49   #6 (permalink)
Senior Member
 
Registriert seit: 03.09.05
Lesco Leistung: Facit NTK
Likes: 0
Standard

Du hast wahrscheinlich keine Datei namens "de,en-us.php"(Beispiel) oder so. Lass dir doch erstmal $_SERVER['HTTP_ACCEPT_LANGUAGE'] ausgeben und sieh dann weiter. Wie Mackz schon sagte: nur die erste angegebene Sprache auswerten.

OT: Code-Tags und Einrückung sind auch tolle Sachen.
Lesco ist offline   Mit Zitat antworten
Alt 09.05.06, 16:57   #7 (permalink)
 
Registriert seit: 09.05.06
Jonny48000 Leistung: Facit NTK
Likes: 0
Standard

wenn ich es mir ausgeben lasse kommt nur "de", kein "de,en-us".
Jonny48000 ist offline   Mit Zitat antworten
Alt 09.05.06, 17:48   #8 (permalink)
cr
Guest
 
Likes:
Standard

@ Mackz Danke nun geht es mit dem Script, hab das fertige genommen
Ich habe header() für die Umleitung verwendet nicht zum auslesen, jedoch mochte Epiphany das komischerweise nicht aber nun gehts ja.
  Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Spracheinstellungen des Browsers in PHP auslesen
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
TXT-auslesen in C++ Duminus Code Kitchen 8 02.05.07 17:24
PHP auslesen? shoggy Internet Allgemein 7 18.04.06 13:09
*.ini auslesen??? Dev C++ bLaCk-DrAg0n Code Kitchen 0 08.11.05 12:38
Dev C++ auslesen von *.ini ??? bLaCk-DrAg0n Code Kitchen 8 31.10.05 13:19
ID3 - Tag auslesen tine Die Problemzone 0 10.07.03 14:17


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61