4

データベースに複数の行を挿入できますが、問題は、更新しようとすると Codeigniter エラー メッセージが表示されることです。これが私のモデルです。実際には、コントローラーにエラーを見つけるための重要なものは何もありません。これは、そのモデルをコントローラーにロードするだけだからです。

$data  = array();
//$todayDate = date('Y-m-d');
for($i = 1; $i < count($_POST['code']); $i++) {
    //$code=$_POST['code'][$i];
    if($_POST['code'][$i] != '') {
        $data[] = array(
            $code='code' => $_POST['code'][$i],
            'price' => $_POST['sell']
            );
    }
}
$linksCount = count($data);

if($linksCount) {
    $this->db->where('code',$code);
    $this->db->insert_batch('sell_rate', $data);
}

return $linksCount;
4

1 に答える 1

3

あなたのModel次の部分には

$data[] = array(
    $code='code' => $_POST['code'][$i],
    'price' => $_POST['sell']
);

交換された

$data[] = array(
    'code' => $_POST['code'][$i],
    'price' => $_POST['sell']
);

update_batch代わりに使用する必要がある値を更新するにはinsert_batch

$this->db->update_batch('yourtableName', $data, 'code'); // 'code' is where key

yourtableName元のテーブル名に置き換えて、キーcodeに使用されているためwhere、使用する必要はありません$this->db->where('code',$code)

参照: CodeIgniter .

于 2012-09-02T23:19:28.293 に答える