[erledigt]phpbb sprachzuweisung
[erledigt]phpbb sprachzuweisung
Hallo,
also ich sitze hier gerade vor einem Problem. Will mein Gästebuch auf sprachdateien und templatesystem umbauen.
Nun häng ich aber bei den sprachdateien.
Wo wird in phpBB die sprache aus der datenbank geholt? Ich nehme an functions.php habe dort aber nichts gefunden und/oder bin zu blöd.
und wie funktioniert das, das man auf anderen seiten wie z.b. faq die lang_faq hat?
Aber ich denke ich war nur irgendwie ein wenig zu blöd richtig zu suchen.
ps. Nehme meine Inspiration von phpBB^^
also ich sitze hier gerade vor einem Problem. Will mein Gästebuch auf sprachdateien und templatesystem umbauen.
Nun häng ich aber bei den sprachdateien.
Wo wird in phpBB die sprache aus der datenbank geholt? Ich nehme an functions.php habe dort aber nichts gefunden und/oder bin zu blöd.
und wie funktioniert das, das man auf anderen seiten wie z.b. faq die lang_faq hat?
Aber ich denke ich war nur irgendwie ein wenig zu blöd richtig zu suchen.
ps. Nehme meine Inspiration von phpBB^^
Zuletzt geändert von Ambience am 18.11.2006 21:14, insgesamt 2-mal geändert.
Die Sprache kommt nicht aus der Datenbank, sondern aus lang_*.php. Diese Dateien sind einfacher PHP-Code, deswegen die Endung, mit einem assoziativen Array (Name als Index, kein Integer). Diese Dateien werden mittels des PHP-Konstrukts include() inkludiert, womit dir dieses As-Array im Code zur Verfügung steht. Anstatt von echo "Hallo Welt"; schreibst du nun eben echo $lang["Hello_World"]; weil du in der lang_*.php geschrieben hast $lang["Hello_World"] = "Hallo Welt";
Das ganze findest du nicht in functions.php. sondern im common.php, IIRC
Das ganze findest du nicht in functions.php. sondern im common.php, IIRC
nein, ich mein das anders.
also in der datenbank steht:
default_lang und als wert hat das z.b. german
dann werden ja aus der language/lang_german/lang_main.php die sachen geholt. oder so in der richtung.
Nun ich möchte gerne wissen, wo das genau ist. also auf der faq seite wird ja eine andere lang_* datei benutzt als auf der index.
Meine genaue Frage wäre:
Wo wird zum ersten mal die sprache geholt. also aus der datenbank in der common. wo werden dann die dateien geincludet`? und wie läuft das mit der faq seite, das da die lang_faq.php geholt wird?
evtl. hab ich mich jetzt ein wenig besser ausgedrückt.
ok, habs nun selber gefunden:
aber wo wird in der index.php die sprache geholt?
also in der datenbank steht:
default_lang und als wert hat das z.b. german
dann werden ja aus der language/lang_german/lang_main.php die sachen geholt. oder so in der richtung.
Nun ich möchte gerne wissen, wo das genau ist. also auf der faq seite wird ja eine andere lang_* datei benutzt als auf der index.
Meine genaue Frage wäre:
Wo wird zum ersten mal die sprache geholt. also aus der datenbank in der common. wo werden dann die dateien geincludet`? und wie läuft das mit der faq seite, das da die lang_faq.php geholt wird?
evtl. hab ich mich jetzt ein wenig besser ausgedrückt.
ok, habs nun selber gefunden:
Code: Alles auswählen
//
// Load the appropriate faq file
//
if( isset($HTTP_GET_VARS['mode']) )
{
switch( $HTTP_GET_VARS['mode'] )
{
case 'bbcode':
$lang_file = 'lang_bbcode';
$l_title = $lang['BBCode_guide'];
break;
default:
$lang_file = 'lang_faq';
$l_title = $lang['FAQ'];
break;
}
}
else
{
$lang_file = 'lang_faq';
$l_title = $lang['FAQ'];
}
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/' . $lang_file . '.' . $phpEx);
- Jan500
- Ehemaliges Teammitglied
- Beiträge: 4199
- Registriert: 01.03.2003 21:32
- Wohnort: Hamburg
- Kontaktdaten:
hi
in der inculdes/functions.php
die function init_userprefs()
für die faq ist dieser code verantwortlich in der faq.php
in der inculdes/functions.php
die function init_userprefs()
für die faq ist dieser code verantwortlich in der faq.php
gruß jan//
// Load the appropriate faq file
//
if( isset($HTTP_GET_VARS['mode']) )
{
switch( $HTTP_GET_VARS['mode'] )
{
case 'bbcode':
$lang_file = 'lang_bbcode';
$l_title = $lang['BBCode_guide'];
break;
default:
$lang_file = 'lang_faq';
$l_title = $lang['FAQ'];
break;
}
}
else
{
$lang_file = 'lang_faq';
$l_title = $lang['FAQ'];
}
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/' . $lang_file . '.' . $phpEx);
"Life begins at 40 Knots...!" 
kein (kostenlosen) Support per pn, mail, icq usw. | Kostenlosen Support gibt es hier im Forum!

kein (kostenlosen) Support per pn, mail, icq usw. | Kostenlosen Support gibt es hier im Forum!
- Olli Oberhausen
- Mitglied
- Beiträge: 561
- Registriert: 22.10.2004 01:03
- Wohnort: Oberhausen NRW
- Kontaktdaten:
functions.php > function init_userprefs()
Die funktion hab ich der Übersicht halber gekürzt...
Olli
Code: Alles auswählen
function init_userprefs($userdata)
{
global $board_config, $theme, $images;
global $template, $lang, $phpEx, $phpbb_root_path, $db;
global $nav_links;
if ( $userdata['user_id'] != ANONYMOUS )
{
if ( !empty($userdata['user_lang']))
{
$default_lang = phpbb_ltrim(basename(phpbb_rtrim($userdata['user_lang'])), "'");
}
}
else
{
$default_lang = phpbb_ltrim(basename(phpbb_rtrim($board_config['default_lang'])), "'");
}
$board_config['default_lang'] = $default_lang;
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_main.' . $phpEx);
if ( defined('IN_ADMIN') )
{
if( !file_exists(@phpbb_realpath($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_admin.'.$phpEx)) )
{
$board_config['default_lang'] = 'english';
}
include($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_admin.' . $phpEx);
}
return;
}
Olli
Neulich im Zoo: Papa, guck mal, da sind Linuxe...
KB-Suche :: db_update_generator :: phpMyAdmin
Winmerge :: Zend Studio
KB-Suche :: db_update_generator :: phpMyAdmin
Winmerge :: Zend Studio
danke
so hab mal ein wenig rumgespielt:
ehm ja. Wie komm ich jetzt auserhalb dieser funktion an meine language variablen?
so hab mal ein wenig rumgespielt:
Code: Alles auswählen
function setup_guestbook()
{
global $greatbook_config, $greatbook_root_path, $phpEx;
$default_lang = $greatbook_config['language'];
if (!file_exists($greatbook_root_path . 'language/' . $default_lang . '/lang_main.' . $phpEx))
{
//
// alternate language for guestbook
//
$default_lang = 'de';
}
if (!file_exists($greatbook_root_path . 'language/' . $default_lang . '/lang_main.' . $phpEx))
{
die('Keine valide language datei gefunden');
}
include($greatbook_root_path . 'language/' . $default_lang . '/lang_main.' . $phpEx);
}
Normalerweise müsste das so funktionieren.. evt. mal $lang mit in die globals aufnehmen
Code: Alles auswählen
global $greatbook_config, $greatbook_root_path, $phpEx, $lang;