Seite 1 von 1

Sprachermittlung des Users

Verfasst: Di 27. Nov 2007, 10:57
von ephesus
Hallo!

Ich möchte folgenden Code, zur Sprachermittlung des Users in Contenido einbauen...an welcher Stelle kann ich das machen?

Code: Alles auswählen

<?php

function BenutzerspracheErmitteln()
{
    if($_SERVER['HTTP_ACCEPT_LANGUAGE'])
    {
        return $_SERVER['HTTP_ACCEPT_LANGUAGE'];
    }
    else
    {
        return "Unbekannte Sprache";
    }
}

echo BenutzerspracheErmitteln();

Gruß,
ephesus[/code]

Verfasst: Di 27. Nov 2007, 11:34
von emergence
in einem modul, layout oder direkt in der front_content.php oder in einer cms/config.local.php

es kommt darauf an was du genau machen willst... da hast du nämlich nicht geschrieben...

Verfasst: Di 27. Nov 2007, 11:49
von ephesus
Hallo!


Ich habe jetzt folgendes Modul angelegt:

Code: Alles auswählen

<?php
    $lang = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
    switch($lang) {
    case 'de': 
    $weiterleitung = 'front_content.php?client=$client&lang=1&parent=$parent&subid=$subid&idcat=$idcat';
    break;
    case 'en': 
    $weiterleitung = 'front_content.php?client=$client&lang=3&parent=$parent&subid=$subid&idcat=$idcat';
    break;
    default: 
    $weiterleitung = 'front_content.php?client=$client&lang=3&parent=$parent&subid=$subid&idcat=$idcat';
    }
    header ("location: $weiterleitung");
?>
Wie bekomme ich es hin, dass dieser benutzt wird.....

Verfasst: Di 27. Nov 2007, 11:59
von kummer
das würde ich ganz sicher nicht machen. denn dadurch ist ein bewusster sprachwechsel unmöglich. folgendes szenario: ich bin auf einem rechner, der französisch eingestellt ist, bin jedoch deutschspachig. wenn ich nun auf deine seite komme, wird es mir nicht möglich sein, auf deutsch zu wechseln.

ich würde wenigstens prüfen, ob bereits eine sprache in der session gespeichert ist. das geschieht nämlich beim ersten zugriff erst am ende. solange keine sprache gesetzt ist, kann du diese weiterleitung vornehmen. sonst würde ich darauf verzichten.

damit du eine weiterleitung aus einem modul machen kannst, musst du ausserdem die ausgabepufferung einschalten (ob_start() und ob_end_clean()) an den anfang, respektive das ende der front_content.php setzen.

Verfasst: Di 27. Nov 2007, 12:57
von ephesus
@kummer

hab vorhin falsch getestet...hast recht klappt nicht! :-(


Gruß,
ephesus