WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 12.02.2004, 09:44   #1
blauesau
Hero
 
Registriert seit: 08.04.2003
Beiträge: 821


Standard I18N mit PHP

Hallo!

Kann mir bitte jemand die nötigen Befehle sagen, um folgendes zu bewerkstelligen: Ich möchte aus den HTTP-Headern die Spracheinstellung des Browsers auslesen und je nach gesetzter Sprache weiterleiten.

Also wenn Sprache == de.XY dann auf die deutsche und bei allen anderen Einstellungen auf die englische Version.

Wenn mir also jemand sagen kann, wie ich die Sprachinformation mit PHP aus dem Header bekomme und wie ich mittels PHP forwarde (bzw. redirect), wäre mir schon sehr geholfen.

Vielen Dank!

mfg,
bs
blauesau ist offline   Mit Zitat antworten
Alt 12.02.2004, 10:46   #2
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

PHP-Code:
<?php
if (preg_match('/^en/i', @$_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
  
header('Location: http...');
} else {
  
header('Location: http...');
}
?>
~
____________________________________
LOL - Mein erstes Post im Programmier Forum

MACINTOSH - Most Applications Crash, If Not The Operating System Hangs
käptn ist offline   Mit Zitat antworten
Alt 12.02.2004, 16:03   #3
dub
Veteran
 
Registriert seit: 28.01.2003
Alter: 41
Beiträge: 321


dub eine Nachricht über ICQ schicken
Standard

Welchen Sinn macht "@" vor einer Variable?

#Hannes#
dub ist offline   Mit Zitat antworten
Alt 12.02.2004, 22:51   #4
blauesau
Hero
 
Registriert seit: 08.04.2003
Beiträge: 821


Standard

Danke, das hätte ich mir ja ganz anders gedacht...

Die Funktion Header dient dazu, den HTTP-Header zu beschreiben? Gibt es keine Funktion à la redirect oder etwas ähnliches?

Bzw. gibt es eine Möglichkeit zwischen Redirect und Forward zu unterscheiden?
blauesau ist offline   Mit Zitat antworten
Alt 13.02.2004, 08:12   #5
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

Jam durch den Statuscode. Wirf einen Blick in die http 1.1 RFC.
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Alt 13.02.2004, 10:35   #6
Deftones
Master
 
Registriert seit: 26.11.2002
Alter: 47
Beiträge: 572


Standard

Zitat:
Original geschrieben von dub
Welchen Sinn macht "@" vor einer Variable?

#Hannes#
soviel ich weis ist @ dazu da damit man fehler unterdrücken kann oder so !?

mfg
deftones
____________________________________
Es gibt nix gutes außer man tut es
nur die Toten wissen wie der Krieg war !

Fatal error: Maximum execution time exceeded in mod_glaskugel at line 23
Deftones ist offline   Mit Zitat antworten
Alt 13.02.2004, 18:53   #7
dub
Veteran
 
Registriert seit: 28.01.2003
Alter: 41
Beiträge: 321


dub eine Nachricht über ICQ schicken
Standard

Dass man mit einem "@" Fehler-Ausgabe [und damit verbundene Unterbrechungen beim Ausführen des Scripts] unterbinden kann, ist klar - aber was für eine Wirkung hat das bei einer Variable bzw. einem Array?

Kann IMHO nur zur Unterbindung von eventuellen "Warings" dienen, die bei undefinierten Variablen ausgegeben werden.

#Hannes#
dub ist offline   Mit Zitat antworten
Alt 13.02.2004, 22:14   #8
käptn
Inventar
 
Registriert seit: 04.11.2001
Alter: 45
Beiträge: 2.150


Standard

"Fatal Errors" unterbrechen die Ausführung des Scriptes auf alle Fälle - das @ vor einer Variable ist unsauber und umgeht die Überprüfung durch isset() o.ä., und unterdrückt, wie schon gesagt, eine Fehlermeldung.

~
____________________________________
LOL - Mein erstes Post im Programmier Forum

MACINTOSH - Most Applications Crash, If Not The Operating System Hangs
käptn ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:16 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag