2012-04-03 1 views
0

だから、基本的に、私はヘルパーを持っている -CodeIgniterの2つのデータベーステーブルからヘルパーからの引き渡しがdataba

function records() 
{   
    $ci = get_instance();      
    $ci->db->order_by("date", "desc"); 
    $ci->db->limit(20); 
    $query = $ci->db->get('records'); 
    $data =array(); 
    foreach($query->result_array() as $orders) 
    { 
    $data[] = $orders; 
    }    
    return $data; 
} 

私は見るために、それからのデータを渡す必要がありますが、現在、私はテーブルのレコードからデータを渡しています。さらに、レコードから$ data []を取得した後、現在のレコードIDを確認してから、同じ$ data []内のすべてのユーザーの詳細をユーザーである別のテーブルから渡す必要があります。どうしたらいいですか?だから、基本的には、レコードからすべてのデータを取得し、そのレコードがどのユーザーかを確認し、get_where( 'users'、array( 'id' => $ data ['user_id']))でそのユーザーを検索します。新しい配列または同じ$ data []配列のいずれかにユーザーデータを追加します。これは何かできるか?はいの場合は、その例を示してください。

+1

まず、常にデータベース接続のモデルを作成します。ヘルパーは、データベースクエリを使用するためのものではありません。 CIでMVC構造体を使用すると、アプリケーションをeasly構築できます。 http://codeigniter.com/user_guide/overview/mvc.html – safarov

+0

ヘルパーでモデルを読み込むことはできますか? –

+0

私の最初の質問については、とにかく助けてくれますか? –

答えて

1

私はあなたが参加したいと思いますか?

http://codeigniter.com/user_guide/database/active_record.html

$ci->db->order_by("date", "desc"); 
    $ci->db->limit(20); 
    $query = $ci->db->from('records')->join('users', 'records.user_id=users.id')->get(); 

は、ユーザーのIDを参照するレコードをテーブルに正しいフィールド名を使用するようにクエリを変更を確認してください。上記のコメントは正しいですが、ヘルプは絶対に質問の場ではありません。実際、get_instanceを使用してヘルパーでCIオブジェクトを取得するという良い例は考えられません。おそらくCI独立関数であるべきです。

0

まず、データベース操作にモデルを使用することを常にお勧めします。モデルからデータベース情報を取得するには、ライブラリを使用することもお勧めします。ヘルパーは、日付の計算、検索機能など、データベースが常に必要というわけではないという目的のために使用できます。

第2に、私はあなたのことを正しく理解しています。テーブルから配列にレコードを取得して、その配列にレコードがあるかどうかをチェックしたいのですが、ユーザーの詳細は別のデータベースから来ていますか?はいの場合、単純にすべてのレコードを配列に取得し、ユーザーの詳細(ユーザーIDなど)を別の配列または変数に取得できます。残りの部分はすべて配列操作です。

関連する問題