2012-04-16 24 views
0

私は英語でCodeIgniterサイトを持っています。今は別の言語(イタリア語)を追加したい、データベースのみで、言語ファイルではない。私はすべてのコンテンツを翻訳し、データベース、name_en、name_it、content_en、content_it ,,,などのようなテーブルフィールドに配置しました。ユーザーは、選択したい言語を選択して、選択した言語でサイトをナビゲートします。データベースフィールドに対応する関数をモデル化するために、言語によるクエリーに基づいてセッションでこれを行うと思います。それ以外の場合は英語のデフォルト言語を作成します。コントローラ、モデル、ビューのコードを変更する方法を教えてもらえますか? Thnxで事前に!CodeIgniter多言語データベース

答えて

0

スクリプトは大きすぎてここに書き込むことはできませんが、私は指針を与えることができます。

はまず格納または取得langの

Session Class

第二に、あなたはあなたのDBにユーザテーブルを使用している場合、言語のための新しい列を作成する方法セッションクラスをお読みください。

ビューを読み込む前に、セッションにユーザー言語を設定するか、英語を使用してください。

あなたのビューでは、language_modelを呼び出して適切な文字列を取得する必要があります。 ビューからモデルに直接アクセスするのは良い方法ではありません。 そのような場合は、モジュラーエクステンションを使用する必要があります。

あなたが気にしない場合は、単に

$language = $this->session->userdata('language'); 
echo $this->language_model->fetch_string($language, 'string'); 
でモデルにアクセス