我的应用程序已准备好在开发服务器上。按预期工作。 我使用最新的XAMPP/Codeigniter/HMVC
当上传到生产服务器时,不会出现任何错误。
登录页面只显示无文本!
登录视图
//Example code
<a href="login/switchLanguage/italian"><i class="icon-font"></i> <?php echo lang('language'); ?></a>
在执行时,这是在输出
<a href="login/switchLanguage/italian"><i class="icon-font"></i> </a>
^
|
Here's supposed
to write "Italian"
登录控制器
class Login extends MX_Controller{
function __construct(){
parent::__construct();
$this->load->helper('language');
}
function index($msg = NULL){
// Load our view to be displayed
// to the user
$data['msg'] = $msg;
$this->load->view('login', $data);
}
public function switchLanguage($language = "") {
$language = ($language != "") ? $language : "english";
$this->session->set_userdata('site_lang', $language);
redirect(base_url());
}
编辑:
应用/配置/ hooks.php
$hook['post_controller_constructor'] = array(
'class' => 'LanguageLoader',
'function' => 'initialize',
'filename' => 'LanguageLoader.php',
'filepath' => 'hooks'
);
应用/钩/ Languageloader.php
<?php
class LanguageLoader {
function initialize() {
$ci =& get_instance();
$ci->load->helper('language');
$site_lang = $ci->session->userdata('site_lang');
if ($site_lang) {
$ci->lang->load('login',$ci->session->userdata('site_lang'));
} else {
$ci->lang->load('login','english');
}
}
}
编辑:
示例语言文件:应用程序/语言/意大利/ common_lang.php
<?php
//Application Global
$lang["common_appName"] ="Customer App";
$lang["common_search"] = "Cercare";
$lang["common_search_go"] = "Andare";
$lang["common_label_created_by"] = "Creato da";
//Menus
$lang["common_menu_home"] = "Home";
$lang["common_menu_dashboard"] = "Cruscotto";
$lang["common_menu_production"] = "Produzione";
$lang["common_menu_inventory"] = "Inventario";
$lang["common_menu_user_edit"] = "Modificare";
$lang["common_menu_logout"] = "Il logout";
$lang["common_menu_new_notifications"] = "Ci sono nuove notifiche";
//Submenus
$lang["common_submenu_dashboard"] = "Cruscotto";
$lang["common_submenu_production"] = "Produzione";
$lang["common_submenu_inventory"] = "Inventario";
$lang["common_submenu_orderlist"] = "Lista ordini";
$lang["common_submenu_calendar"] = "Calendario";
我已经走了一通很多问题&回答失败。
任何建议都非常欢迎...
谢谢!
它从语言文件中读取数据,我没有看到您在您的控制器中加载任何语言文件 – ahmad
我使用application/config/hooks.php中的钩子 $ hook [' post_controller_constructor'] =阵列( '类'=> 'LanguageLoader', '功能'=> '初始化', '文件名'=> 'LanguageLoader.php', '文件路径'=> '钩' ); –
你确定你已经在配置文件中启用了钩子选项吗? application/config/config.php? – ahmad