T_String Fehlermeldung

Es steht doch drin. Das ist der komplette Code, der hier angegeben wurde. Ich wollte das Script ausprobieren. Scheinbar ist dieses lang_getfrombrowser aber nicht definiert worden von den Autoren?
 
Da ich dieses Buch nicht kenne und es sicherlich auch nicht extra deswegen kaufen und nachlesen werde, gehe ich mal davon aus das der Autor diese Funktion entweder nicht definiert oder vielleicht auf einer anderen Seite hat.
 
Hallo Deepthroat,

danke für den link. ich habe das andere rausgelöscht und den code jetzt mal reinkopiert. ich finds ja schon fast witzig, ich bekomme folgende anzeige

Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\pr\index.php on line 3
:)
 
Dein Kompletter Code sollte so aussehen:

PHP:
<?php
function lang_getfrombrowser ($allowed_languages, $default_language, $lang_variable = null, $strict_mode = true) {
         // $_SERVER['HTTP_ACCEPT_LANGUAGE'] verwenden, wenn keine Sprachvariable mitgegeben wurde
         if ($lang_variable === null) {
                 $lang_variable = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
         }
 
         // wurde irgendwelche Information mitgeschickt?
         if (empty($lang_variable)) {
                 // Nein? => Standardsprache zurückgeben
                return $default_language;
         }

         // Den Header auftrennen
         $accepted_languages = preg_split('/,\s*/', $lang_variable);
 
         // Die Standardwerte einstellen
         $current_lang = $default_language;
         $current_q = 0;
 
         // Nun alle mitgegebenen Sprachen abarbeiten
         foreach ($accepted_languages as $accepted_language) {
                 // Alle Infos über diese Sprache rausholen
                 $res = preg_match ('/^([a-z]{1,8}(?:-[a-z]{1,8})*)'.
                                    '(?:;\s*q=(0(?:\.[0-9]{1,3})?|1(?:\.0{1,3})?))?$/i', $accepted_language, $matches);
 
                 // war die Syntax gültig?
                 if (!$res) {
                         // Nein? Dann ignorieren
                         continue;
                 }
                 
                 // Sprachcode holen und dann sofort in die Einzelteile trennen
                 $lang_code = explode ('-', $matches[1]);
 
                 // Wurde eine Qualität mitgegeben?
                 if (isset($matches[2])) {
                         // die Qualität benutzen
                         $lang_quality = (float)$matches[2];
                 } else {
                         // Kompabilitätsmodus: Qualität 1 annehmen
                         $lang_quality = 1.0;
                 }
 
                 // Bis der Sprachcode leer ist...
                 while (count ($lang_code)) {
                         // mal sehen, ob der Sprachcode angeboten wird
                         if (in_array (strtolower (join ('-', $lang_code)), $allowed_languages)) {
                                 // Qualität anschauen
                                 if ($lang_quality > $current_q) {
                                         // diese Sprache verwenden
                                         $current_lang = strtolower (join ('-', $lang_code));
                                         $current_q = $lang_quality;
                                         // Hier die innere while-Schleife verlassen
                                         break;
                                 }
                         }
                         // Wenn wir im strengen Modus sind, die Sprache nicht versuchen zu minimalisieren
                         if ($strict_mode) {
                                // innere While-Schleife aufbrechen
                                 break;
                        }
                        // den rechtesten Teil des Sprachcodes abschneiden
                         array_pop ($lang_code);
                 }
         }          // die gefundene Sprache zurückgeben 
                 return $current_lang;
 }


$allowedlangs = array ('en', 'de');
$lang = lang_getfrombrowser ($allowedlangs, 'en', null, false);
if ($lang == 'de') {
$greetingText = "Melden Sie sich bitte an ...";
$errorMessage = "Es ist ein Fehler aufgetreten. Benutzername oder Passwort ist leer!";
$loginname = "Benutzername";
$password = "Passwort";
$login_button = "Anmelden";
$reset_button = "Zurücksetzen";
}
else {
$greetingText = "Please log in ...";
$errorMessage = "An erroris occured. Username or Password is empty!";
$loginname = "Username";
$password = "Password";
$login_button = "Login";
$reset_button = "Reset";
}
?>
 
Zurück