Hallo liebe Leute!
Ich habe ein Problem. Für einen Kunden habe ich eine Website mit dem Framework CodeIgniter
umgesetzt. Ich hoffe Ihr kennt euch damit aus.
Das Problem:
Die Website soll multilingual aufgebaut sein, sprich Deutsch und Englisch. Die ganze Website ist auf einer Datenbank gestützt, heisst, der ganze Content kommt da raus. Die aktuelle Sprache liegt in einer Session-Variable.
Soweit, sogut. Auch an sich kein Problem. Nur leider wird beim ersten Aufruf der Website die Session aus irgend einem Grund nicht gestartet. Wenn man dann aber neulädt wird die Session gesetzt und alles funktioniert prima. Allerdings ist das schon doof wenn man als erstes nur eine Fehlermeldung sieht.
Ich habe einen HauptController namens site.php (gekürzt)
Hier die Library Core.php
Wenn Ihr noch was braucht, sagt bescheid ...
Ich hoffe Ihr könnt mir helfen und danke schonmal im voraus!!
Ich habe ein Problem. Für einen Kunden habe ich eine Website mit dem Framework CodeIgniter
umgesetzt. Ich hoffe Ihr kennt euch damit aus.
Das Problem:
Die Website soll multilingual aufgebaut sein, sprich Deutsch und Englisch. Die ganze Website ist auf einer Datenbank gestützt, heisst, der ganze Content kommt da raus. Die aktuelle Sprache liegt in einer Session-Variable.
Soweit, sogut. Auch an sich kein Problem. Nur leider wird beim ersten Aufruf der Website die Session aus irgend einem Grund nicht gestartet. Wenn man dann aber neulädt wird die Session gesetzt und alles funktioniert prima. Allerdings ist das schon doof wenn man als erstes nur eine Fehlermeldung sieht.
Ich habe einen HauptController namens site.php (gekürzt)
PHP-Code:
class Site extends Controller {
function site()
{
parent::Controller();
$this->load->model('content_model', 'content');
$this->load->model('product_model', 'product');
$this->load->model('sub_navigation_model', 'sub_navigation');
$this->load->helper('text');
$this->core->initialize(); //mit Hilfe dieser Library initialisere ich (eigtl) die session
$this->global_lang();
}
}
PHP-Code:
class Core {
function initialize()
{
$this->CI =& get_instance();
//wenn keine session 'language' existiert, setze sie standardmäßig auf deutsch
if ($this->CI->session->userdata('language') === FALSE) {
$data = array('language' => 'german');
$this->CI->session->set_userdata($data);
}
define('LANGUAGE', $this->CI->session->userdata('language'));
define('IMAGES', base_url().'assets/images/'.LANGUAGE.'/');
define('STORAGE', base_url().'storage/');
}
}
Ich hoffe Ihr könnt mir helfen und danke schonmal im voraus!!
Kommentar