0

配列からコード イグナイターのテーブルに行を挿入しようとしましたが、何か問題が発生しています。

それが配列です:

Array
(
    [Date] => 2001-08-15
    [Number] => 962883
    [Time] => 17:40
    [Etc1] => 0
    [Etc2] => 0      
)

そして、これは挿入です:

$this->db->insert('mytable', $myarray); 

新しい行が挿入されますが、すべての列が空です! エラーを見つけようとして、最後のクエリを

echo $this->db->last_query() ." <br>";

そして、私は得ました:

INSERT INTO `mytable` (`Date`, `Number`, `Time`, `Etc1`, `Etc2`) 
VALUES 
('\02\00\00\01\0-\00\08\0-\01\05\0', '\09\06\02\08\08\03\0', '\01\07\0:\04\00\0', '\00\0', '\00\0') 

何らかの理由で取得できません。codeigniter (または PHP ) が値を誤ってエスケープしています。

何か案が?

4

3 に答える 3

0

これを試してください、これが役立つかもしれません。

$this->db->set('Date', '2001-08-15', FALSE);
$this->db->set('Number', '962883', FALSE);
$this->db->set('Time', '17:40', FALSE);
$this->db->set('Etc1', '0', FALSE);
$this->db->set('Etc2', '0', FALSE);

this->db->insert('mytable');
于 2013-07-24T11:08:04.007 に答える
0

私はあなたの問題をエミュレートしようとしましたが、正しい SQL ステートメントを生成することができました。

しかし、私のために働いたコードをここに貼り付けています:

$data = array
(
    'Date' => '2001-08-15',
    'Number' => '962883',
    'Time' => '17:40',
    'Etc1' => '0',
    'Etc2' => '0'      
);

$this->db->insert('mytable', $data);

これが機能するかどうかをお知らせください。機能しない場合は、エラー メッセージを教えてください。

于 2013-11-16T04:11:19.637 に答える