31
Hilfe & Support (deutsch) / Re: Form-Modul und mpForm senden nur auf Seiten in Primärsprache
« Last post by masju on November 05, 2024, 02:26:14 PM »Variablen geändert in
Code: [Select]
<?php
// Verfügbare Sprachunterseiten (z.B. 'de' für Deutsch, 'en' für Englisch)
$my_available_languages = ['es', 'de', 'en', 'fr'];
// Funktion zum Extrahieren der bevorzugten Sprache
function getPreferredLanguage($my_available_languages) {
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
// Liste der Sprachen aus dem Header holen und aufsplitten
$my_languages = explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']);
foreach ($my_languages as $my_lang) {
// Nur den Sprachcode (z.B. 'de' oder 'en') extrahieren
$my_lang_code = substr($my_lang, 0, 2);
// Prüfen, ob die Sprache verfügbar ist
if (in_array($my_lang_code, $my_available_languages)) {
return $my_lang_code;
}
}
}
// Standardmäßig auf Englisch setzen, falls keine passende Sprache gefunden wird
return 'en';
}
// Bevorzugte Sprache des Besuchers ermitteln
$my_user_language = getPreferredLanguage($my_available_languages);
// Weiterleitung auf die entsprechende Unterseite mit einem switch-Block
switch ($my_user_language) {
case 'es':
header("Location: /pg/es/inicio.php"); // Spanisch
break;
case 'de':
header("Location: /pg/de/startseite.php"); // Deutsch
break;
case 'en':
header("Location: /pg/en/home.php"); // Englisch
break;
case 'fr':
header("Location: /pg/fr/accueil.php"); // Französisch
break;
default:
header("Location: /pg/en/home.php"); // Fallback auf Englisch
break;
}
?>
Noch kein Success.
Seltsam, dass es auf dem gespiegelten Server trotzdem lief.