php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack (2) Themen-Optionen Thema bewerten
Alt 28.09.2004, 22:30  
Gast
 
Beiträge: n/a
Standard [Erledigt] Sprache vom Browser herausfinden.

Guten Abend...

Nach teilweise fast erfolgreicher Suche, bin ich auf einige Beiträge zum Thema mehrsprachige Seite gestossen.
Mein Projekt bezieht sich auch auf mehrere Sprachen und Länder und ich möchte, das die Browsersprache die Hauptsprache für die Seite ist (natürlich mit der möglichkeit die Sprache zu wechseln)

Meine Frage: Wie mache ich die Browsersprache mit PHP ausfindig?

Ich weiss das es mehrere Befehle gibt, hab aber nix gefunden im Forum.

Mfg @HHVH
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 28.09.2004, 22:55  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von hhvh
Ich weiss das es mehrere Befehle gibt
Echt? Dann weißt du mehr als alle anderen hier im Forum!
Nein, nun mal im Ernst:
PHP ist serverseitig. Der Browser eine reine Clientsache.
Die einzige Möglichkeit, etwas über den Browser rauszufinden ist über JavaScript.
 
Alt 28.09.2004, 22:58  
Gast
 
Beiträge: n/a
Standard

Stimmt das vergesse ich häufig! *smile* ne mal im Ernst, hab mich nur mit der Forensuche begnügt. Danach mal die google-machine nbissle auf hochtouren gebracht und mir einige Einträge zukommen lassen.

Sobald ich weiss wie's geht und alles ausprobiert habe, werdichs hier posten.

Mfg @HHVH
 
Alt 28.09.2004, 23:01  
Gast
 
Beiträge: n/a
Standard

Hi.

Ich habe schon gedacht, dass ich da eine große Wissenslücke habe und deswegen nichts zu geschrieben.

Der beitrag von Jojo zwingt mich jetzt, doch etwas dazu zu schreiben.

Uber $_SERVER["HTTP_USER_AGENT"] kannst du Informationen über den Browser bekommen.

Einige übermitteln auch die eingestellte Sprache.

Das kann dann so aussehen.

Mozilla/5.0 (Windows; U; Windows NT 5.0; de-DE; rv:1.7) Gecko/20040803 Firefox/0.9.3

Aber das schwankt von Browser zu Browser und ist nicht zuverlässig. Die Angabe de-DE kann auch als en-US angezeigt werden, wenn ich die englische Version des Browsers verwende.
Also ein Deutscher, dem standardmäßig deine englische Version der Seite angezeigt werden würde.

Weiterhin kann mit verschiedenen Tools der Eintrag dieser Variable verändert werden.
 
Alt 28.09.2004, 23:04  
Gast
 
Beiträge: n/a
Standard

Doch gibt ne Möglichkeit die ziemlich gut funktioniert: Mit der IP des Browsers. Glaub da gibbet sowas nennt sich "GeoIP" da kann man das einem Land zuordnen.
 
Alt 28.09.2004, 23:07  
Gast
 
Beiträge: n/a
Standard

Das wird auch nicht zuverlässig funktionieren.

AOL-User kommen immer aus der USA

Das ist nur ein Beispiel.

Was du meinst, findet sich hier.

http://www.phpfriend.de/forum/viewto...ht=iptocountry
 
Alt 28.09.2004, 23:20  
Gast
 
Beiträge: n/a
Standard

ich hab dazu ma folgendes gefunden (gehabt)

PHP-Code:
<?php

function begins_with($a$b){
return (
substr($a0strlen($b)) == $b);
}

?>
<?PHP

function getLang(){
$host_lang $_SERVER['HTTP_ACCEPT_LANGUAGE'];

# Parse Accept-Language header
$lang_arr explode(","$host_lang);
for (
$n 0$n sizeof($lang_arr); $n++){
    
$a $lang_arr[$n];
    if (
strpos($a";")) $a substr($a0strpos($a";"));
        
$lang_arr[$n] = $a;
    }
    
$lang_arr array_reverse($lang_arr);
    foreach (
$lang_arr as $a){
        if (
begins_with($a"at")) $lang "ger";
        if (
begins_with($a"ch")) $lang "ger";
        if (
begins_with($a"de")) $lang "ger";
        if (
begins_with($a"en")) $lang "eng";
        if (
begins_with($a"fr")) $lang "fra";
    }
return 
$lang;
}

?>
man sollte es am besten so machen das er das ganze direkt auslesen kann, ohne das man für jedes Land ne spalte machen muss...(dürfte mit explode ja kein problem sein )
 
Alt 28.09.2004, 23:25  
Gast
 
Beiträge: n/a
Standard

Wow!
man lernt nie aus!
 
Alt 28.09.2004, 23:26  
Gast
 
Beiträge: n/a
Standard

Interessantes Skript, werd ich auf jeden Fall mal zerpflücken und analysieren.

Was mich irritiert:

de-de,de;q=0.8,en-us;q=0.5,en;q=0.3

Das steht bei mir in dieser Variable. Also de und auch en.

Aber vielleicht raff ich das ja, wenn ich das Skript besser durchblicke.
 
Alt 28.09.2004, 23:31  
Gast
 
Beiträge: n/a
Standard

Das oben stehnde Script liefert bei meinem englischen Firefox1.0 Preview Release (gibts ein neuer??) die Ausgabe "eng"!! Ich hab ein Deutsches Windoof, leb in Deutschland ja ich möcht bitte als Deutscher erkannt werden^^

Ich hab hier mal ein Beispiel für GeoIP:
http://217.84.135.47/geoip/sample.php
Da ist nur die Liste der Länder auf Englisch, man könnte ja die wichtigsten übersetzen, die anderen werden eben auf englisch angezeigt. Die Theroie ist so dass du ihm die IP Adresse des Clients gibst und er die dann einem land zuordnet. Man kann sogar eine Regionszuordung machen aber die kostet und ob die 100% funktioniert, wohl bestimmt nicht in allen Ländern. Das mit den Ländern blick ich net ob es wirklich kostenlos ist ich bin aber über die Seite von MaxMind direkt an die Dateien gekommen ich kann mir net vorstellen dass die so blöd sind.

Hier die Links wie du zu dem kommst:
http://www.maxmind.com/app/php
Wenn du kein Modul installieren willst/kannst/darfst kannst du das "pure PHP Module" holen dann brauchst du noch die Data-File die gibts hier:
http://www.maxmind.com/download/geoip/database/

Das ganze funktioniert nur nicht wenn:
a) Man über einen Proxy-Server browst der in einem anderen land ist (macht aber keiner wär ja viel zu langsam)
b) ein Fehler in GeoIP vorliegt aber geoIP ist ziemlich bekannt denn z.b. bei meinem NeoMule werden auch so die Herkunftsländer der anderen Clients erkannt.

Wenn du es nicht hinbekommst kannst ja nochmal fragen!

Gruß JD
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

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

LinkBacks (?)
LinkBack to this Thread: http://www.php.de/php-tipps-2004/9956-erledigt-sprache-vom-browser-herausfinden.html
Erstellt von For Type Datum
was haltet ihr davon? | wallstreet-online.de This thread Refback 05.09.2008 17:41
was haltet ihr davon? | Seite 138 | wallstreet-online.de This thread Refback 05.09.2008 17:40

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Script als Browser ausgeben drieling PHP-Fortgeschrittene 12 22.10.2007 15:52
[Erledigt] T-Online Browser schaltet sich ständig in den Vordergrund Off-Topic Diskussionen 6 08.05.2006 17:03
PHP-Ausgabe gepuffert an Browser senden sponer PHP Tipps 2006 2 24.04.2006 00:08
Style: Cursor für Browser definieren SvenLittkowski HTML, Usability und Barrierefreiheit 2 15.04.2006 14:02
nichts im Browser zu sehen PHP Tipps 2006 12 22.02.2006 20:11
Browser herausfinden Smily0412 PHP Tipps 2006 14 14.01.2006 15:35
Sprache auf Webseite ändern PHP Tipps 2006 3 08.01.2006 13:44
varible im header gültig für alle browser PHP Tipps 2007 5 29.11.2005 12:03
Wie kann ich verhindern das der Browser encodete axelnes HTML, Usability und Barrierefreiheit 15 18.11.2005 18:37
browser herausfinden PHP Tipps 2005-2 10 01.10.2005 15:27
Sprache einer Seite wechseln mercurio PHP Tipps 2005-2 9 06.09.2005 13:19
Sprache des Clients herausfinden PHP Tipps 2005-2 2 05.07.2005 15:23
Browser erkennen PHP Tipps 2005 24 25.01.2005 02:06
[Erledigt] Browser will index.php downloaden Server, Hosting und Workstations 6 13.12.2004 12:52
[Erledigt] Browser und MSG Box HTML, Usability und Barrierefreiheit 4 17.08.2004 18:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php sprache erkennen, php script browser sprache umschalten, php sprache $_server[\'http_user_agent\'], http sprache rausfinde, spracheinstellung vom browser rausfinden, gibt es ein php befehl der das land des browser herausfindet, herausfinden welche sprache das ist, sprache des browsers rausfinden, spracheinstellungen im browser mit php, browsersprache en-us wird nicht erkannt, php sprache erkennen browser, php geoip sprache erkennen, meine sprache im browser, php spracheinstellung erkennen, php browsersprache at wird nicht erkannt, php sprache des browsers erkennen, sprache browser erkennen php, browser sprache rausfinden javascript, php sprache vom browser rausfinden, meine browser herausfinden

Alle Zeitangaben in WEZ +2. Es ist jetzt 04:12 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.