2012-09-06 24 views
1

在我的PHP網站中,我將SiteTranslator腳本用於翻譯成30種語言的網站。每個翻譯都存儲在自己的表(text_en,text_de ...)中,每個表都有3列(textKey,textValue,lastUpdate)。在CodeIgniter中使用現有的MySQL數據庫

現在我想在我的CodeIgniter應用程序中使用該數據庫。 什麼是最好的辦法呢?

+4

你想做什麼?要使用它,你必須閱讀CodeIgniter用戶指南,尤其是數據庫類部分:http://codeigniter.com/user_guide/database/index.html –

+0

你的問題太寬泛,請嘗試一些具體的 –

+0

如果你想使用它與另一個數據庫一起,可以連接到多個數據庫。請閱讀[文檔](http://codeigniter.com/user_guide/database/connecting.html)。 –

回答

1

您可以使用多個數據庫的建議,你仍然需要設置你的應用程序的語言文件

{用戶指南中閱讀更多}

基於第一URI段,你可以嘗試一些喜歡這個。

添加路由

$route['en|fr|gr/test'] = 'test'; 

首先段檢查EN OR FR或任何其他。

然後主控制器捕捉所述第一區段的測試控制器被初始化之前和分貝(對象) & & 應用程式(語言)文件被設置

www.site。 COM/EN /測試 =>加載英語語言文件(應用/語言/英語/ mylanguage)和db

www.site.com/fr/test =>負載法語文件(應用/語言/法語/ mylanguage)和db ...等等

主控制器

class MY_Controller extends CI_Controller{ 

    protected $lang, $db; 

    public function __construct(){ 
     parent::__construct(); 

     $this->set_language(); 
    } 

    protected function set_language(){ 
     switch($this->uri->segment(1)) 
     { 
      case 'en': 
       $this->lang  = $this->lang->load('mylanguage', 'english'); 
       $this->db  = $this->load->database('en', TRUE); 
      break; 

      case 'fr': 
       $this->lang  = $this->lang->load('mylanguage', 'french'); 
       $this->db  = $this->load->database('fr', TRUE); 
      break; 

      default: 
       $this->lang  = $this->lang->load('mylanguage', 'english'); 
       $this->db  = $this->load->database('en', TRUE); 
      break; 
     } 
    } 


} 
+0

它幫助了我。謝謝。 –

相關問題