WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- Weiterleitung nach Land

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » Weiterleitung nach Land - 06 Juli 2020 Antworten
im Forum für Webhosting Homepage gefunden:
Weiterleitung nach Land
tobias
Foren-Team
Threadstarter




Beiträge: 708

Kann mir jemand sagen, wie ich einen User je nach dem Land, aus dem er kommt, auf eine bestimmte Seite weiterleiten kann?

Z.b:
Aus Deutschland -> leite weiter zu de.php

Das lässt sich doch irgendwie machen, oder?

  Profil   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

Hi,

hier ist zunächst einmal von Deiner Seite zu erklären, wie Du feststellst, aus welchem Land der User zu Deiner Seite gelangt.
Danach ist Dir dann mit Sicherheit zu helfen.

MfG
Jürgen

  Profil   Website   Editieren   Zitieren
michael
Foren-Team




Beiträge: 1932

ich denke mal das ist das problem Aber das geht! Steht ja in den Logfiles auch drin... musst du Provider-Adresse auslesen (javascript oder php - damit geht das glaub ich) alles nach dem "." absplitten und dann weiterleiten!


  Profil   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Hier meine Lösung:

$target_location = ereg_replace("/[^/]*$","",$REDIRECT_SCRIPT_URI);
$host = gethostbyaddr($GLOBALS["REMOTE_ADDR"]);

if (eregi("^de",$HTTP_ACCEPT_LANGUAGE) || eregi(".de$",$host)) {
$target_location .= "/de/index.php";
} else {
$target_location .= "/en/index.php";
}

header("Location: ".$target_location);
?>

Ich schau nach ob die Browsersprache deutsch oder die Länderkennung de ist. Wenn eine der beiden Bedingungen zutrifft, geht es auf die deutsche Seite, ansonsten auf die englische.

Thomas


---
Weaverslave

  Profil   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

Guten Tag zusammen!

$host = gethostbyaddr($GLOBALS["REMOTE_ADDR"]);

funktioniert eigentlich nur, wenn 1. der Nameserver bekannt ist und 2. der User eine feste IP besitzt. Was sehr unwahrscheinlich ist. Die meisten User kommen über einen ISP ins Internet. Falls dieser ein Ausländer ist, stimmt die Länderkennung sowieso nicht. D. h. über den Referer kommt man hier nicht zum Ziel. Falls der User direkt eine Seite ansteuert, bleibt die Information "Referer" leer.

Die einzige Möglichkeit den User zu identifizieren wäre die Browserkennung wie: z. B.: -Mozilla/4.0 (compatible; MSIE 5.01; Windows 98-. Der sog. $USER_AGENT. Dieser beinhaltet meistens -wie oben zu erkennen- aber keine Länder- bzw. Sprachkennung.

MfG
Jürgen


  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

Deshalb ja auch die 2. Bedingung mit der Browsersprache. :smile


---
Weaverslave

  Profil   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

< Deshalb ja auch die 2. Bedingung mit der Browsersprache.

Ist hier die Landessprache zu erkennen ??
Wenn ja, wo?


MfG
Jürgen

  Profil   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

Hi noch einmal!

Ich schick hier einmal einen Auszug aus meiner eigenen Counterdatei (meine Domain habe ich gegen "irgendwas" ausgetauscht).

http://www.irgendwas.de/navigation.html|http%3A//www.google.com/ie%3Fq%3D+Immobilien+in+Duisburg%26hl%3Dde|62.104.210.72|Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Win 9x 4.90; QXW0339c)||800|600|16

Hier sind Referer inkl. Query String, Browser Info und Bildschirmauflösung des Users erfasst worden. Eine Länderkennung vermisse ich jedoch.

MfG
Jürgen

  Profil   Website   Editieren   Zitieren
c3o
Posting-Schinder




Beiträge: 585

Erstens, gethostbyaddr() geht nicht nur bei fixen IPs. Es geht zwar auch nicht immer, aber doch in über 3/4 der Fälle. Trotzdem sagt die Domain wenig aus, so sind zB alle T-Online-User auf t-dialin.net, also keine .de!

Zweitens gibts die AcceptLanguage-Einstellung im Browser ($HTTP_ACCEPT_LANGUAGE), die subjective in seinem guten Beispielscript auch abfragt.
Die kann man im IE zB bei den Internet-Optionen -> Sprachen einstellen.

Dann gäbe es noch die Sprache des *Browsers*, also der Buttons etc, die Netscape in eckigen Klammern im UserAgent mitliefert, ca so: Mozilla/4.0 [de] (Netscape 4.78; I; Win98).


  Profil   E-Mail   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

Hi zusammen!

<($HTTP_ACCEPT_LANGUAGE), die subjective in seinem guten Beispielscript auch abfragt.
Die kann man im IE zB bei den Internet-Optionen -> Sprachen einstellen.

Genau das ist es. Wenn der User diese Einstellungen nicht durchführt, können diese auch nicht weitergeleitet werden. In meinen eigenen logs finde ich die Länderkennung bei ca. 5 von 100 Usern.

< Dann gäbe es noch die Sprache des *Browsers*, also der Buttons etc, die Netscape in eckigen Klammern im UserAgent mitliefert, ca so: Mozilla/4.0 [de] (Netscape 4.78; I; Win98).

Netscape nutzten nur noch etwa 10-12% der User. Die Ausbeute wär also ziemlich mager.

Natürlich stimmt es, was Ihr bereits ausgeführt habt. Aber was nutzt es, wenn nur der geringste Teil der User damit erfasst werden kann.

Der vernünftigste Weg ist meines Erachtens der, dem User eine Einstiegseite mit den Flaggen für die einzelnen Landessprachen anzubieten.

MfG
Jürgen



  Profil   Website   Editieren   Zitieren
c3o
Posting-Schinder




Beiträge: 585

Nur 5% mit Länderkennung??
Die Sprache ist im Normallfall im Browser schon voreingestellt, da muss man gar nichts ändern.

Hier aktuelle, über $HTTP_ACCEPT_LANGUAGE ermittelte Stats von einer meiner Seiten. Ich lasse ihn zwar nicht loggen, bei wievielen er keinen Wert bekommt, aber da diese Stats erst seit wenigen Tagen laufen müssten das so gut wie alle Besucher gewesen sein.



Trotzdem: Klar ist eine Fahnen-Seite empfehlenswert, und es muss auf jeden Fall eine Möglichkeit geben, zur anderen Sprachversion zu gelangen.

PS: Falls einer die ?-Sprachenkürzel erkennt, wär ich über ne Meldung froh.


  Profil   E-Mail   Website   Editieren   Zitieren
tobias
Foren-Team
Threadstarter




Beiträge: 708

Danke erstmal an alle.


  Profil   Website   Editieren   Zitieren
Jürgen
Feiertags-Poster




Beiträge: 32

Hi c3o,

Deine Erfahrungen sind wirklich interessant für mich. Vielleicht habe ich da irgendwo eine Denkblockade. Werde noch einmal grübeln müssen.
Vielleicht brauche ich dann Deinen Rat. Also bis bald.

MfG
Jürgen

  Profil   Website   Editieren   Zitieren
subjective
Forenheld




Beiträge: 844

"Browsersprache" wahr wohl etwas ungünstig gewählt. Es ist halt die Sprache, welche der Browser beim Abruf bevorzugen soll. Man muss hier jedoch beachten, das sie nicht immer "de" ist. "de_DE" ist zB auch möglich. Deshalb prüfe ich nur darauf, ob sie mit "de" beginnt.

Ein typisches Problem tritt aber auf, wenn ein User mit dem englischen Mozilla über T-Online surft. Die Domain endet auf ".net" und als Sprache schickt der Browser "en".

Man könnte intern noch ein Datenbank führen die domain.tld einem Land zuordnet. Falls eine Domain nun nicht in der Tabelle vorhanden ist, könnte man ein WHOIS machen, die Daten parsen und sie entsprechend eintragen.

Falls eine Domain nicht aufgelöst werden kann, könnte man mit einem traceroute alle Rechner auf dem Weg herausfinden. Vieleicht wird ja einer davor aufgelöst...

Ich denke damit ist man so ziemlich am Ende angelangt. Aber selbst jetzt ist die Verzweigung nicht 100%ig. So können ein Ami in einem Berliner INet-Cafe sitzen.

Eine manuelle Umschaltmöglichkeit ist also trotzdem empfehlenswert.

Man sollte auch das Verhältnis zwischen Nutzen und Aufwand beachten...

cu
Thomas


---
Weaverslave

  Profil   Website   Editieren   Zitieren
KAL
Otto-Normal-Poster




Beiträge: 70

hmm weiterleitung nach land.. wozu???

---
Hmmm.... Signaturen----

  Profil   E-Mail   Website   Editieren   Zitieren
Seite 1 | 2  

Antworten
Forum » PHP & MySQL » Weiterleitung nach Land

Aktuelle Beiträge zur Hilfe im Forum für Homepage - Weiterleitung nach Land im Forum Homepage Hosting AntwortenLetztes Posting
Gambling
in "PHP & MySQL"
1 19.06.2020 19:48 von hasmpil
Casino online
in "PHP & MySQL"
6 11.06.2020 15:20 von Dino9595
Poolpumpe
in "PHP & MySQL"
1 09.06.2020 16:34 von Baumwerk
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
2 05.06.2020 14:06 von Rogantinno
SEO-Dienste
in "PHP & MySQL"
2 09.04.2020 09:53 von Heuzutag
CMS für Online Shop
in "PHP & MySQL"
25 23.08.2019 10:37 von Againg
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973



Besucher : 6746464    Heute : 1100     Gestern : 1107     Online : 22     6.7.2020    23:33      1 Besucher in den letzten 60 Sekunden        
alle 60.00 Sekunden ein neuer Besucher
Nach oben