0

やあみんな私はcodeigniterに不慣れで、mysqlデータベースからのデータに影響を与える必要があるアプリケーションに取り組んでいます。この目的のために、ビューを処理するためにコントローラーに2つのビューと2つの関数を作成します。。問題は、一方のビューでエラーが発生し、もう一方のビューでは正常に動作することです。。。両方のビューに同じコードがあります。。。plsが役立つ間違いはどこにありますか。。

両方のビューのコード

 <?php foreach ($rows as $row):?>
            <tr>
                <td><?php echo anchor("Home/edit_moderator/" . $row->member_id, 'Edit'); ?></td>
                <td><a href="<?php echo site_url("dbcont/deletemoderator/" . $row->member_id);?>" onclick="return confirm('Delete content?');">Delete</a></td>
                <td><?php echo $row->member_name;  ?></td>
                <td><?php echo $row->moderator_id;  ?></td>
                <td><?php echo $row->kcc_branch;  ?></td>
                <td><?php echo $row->father_name;  ?></td>
                <td><?php echo $row->address;  ?></td>
                <td><?php echo $row->date;  ?></td>
            </tr>
            <?php endforeach; ?>

フェッチするとエラーが発生します moderator_id

<td><?php echo $row->moderator_id;  ?></td>

最初のビューではフェッチしましたが、2番目のビューではフェッチしません。。

編集 :

これがモデルです

function get_moderators(){ 

    $select =   array(
                    'member_id', 
                    'member_name', 
                    'father_name', 
                    'date', 
                    'kcc_branch', 
                    'date_of_birth', 
                    'address', 
                    'phone', 
                    'mobile', 
                    'occupation', 
                    'pan', 
                    'bank_name', 
                    'bank_acc_no', 
                    'bank_branch', 'moderator'
    );

$this->db->select($select); 
$this->db->where('moderator', 1); 
$q = $this->db->get('tbl_members'); 
    if($q->num_rows() > 0) { 
        foreach ($q->result() as $row) { 
            $data[] = $row; 
        }
        return $data; 
    } 
}
4

2 に答える 2

0

私は私の答えを得ました。。私の間違いは、selectクエリでmoderator_idを選択していないことです。。ここに答える人への答えの感謝があります。。

function get_moderators(){ 

$select =   array(
                'member_id',
                'moderator_id', 
                'member_name', 
                'father_name', 
                'date', 
                'kcc_branch', 
                'date_of_birth', 
                'address', 
                'phone', 
                'mobile', 
                'occupation', 
                'pan', 
                'bank_name', 
                'bank_acc_no', 
                'bank_branch', 'moderator'
);


$this->db->select($select); 
$this->db->where('moderator', 1); 
$q = $this->db->get('tbl_members'); 
if($q->num_rows() > 0) { 
    foreach ($q->result() as $row) { 
        $data[] = $row; 
    }
    return $data; 
} 
}
于 2013-03-04T06:40:53.660 に答える
0

選択した配列を削除して、

$ this-> db-> select('*');

同様に機能するはずです

同様のエラーが発生し、データベースのselectステートメントが間違っていることが判明しました。これは悪いものでした:

$ this-> db-> select('field1'、'field2'、'field3'、'field4'); //悪いコード

これはそれを行う正しい方法です:

$ this-> db-> select('field1、field2、field3、field4'); //良い

また

$ this-> db-> select('*'); //まだいい

よろしくお願いします

于 2014-11-25T10:16:16.043 に答える