kunitsuji
tsuji****@m-s*****
2009年 3月 16日 (月) 16:43:53 JST
kunitsujiです。 まず、MySQLのエラーを見ると、SQLの記述に問題があるという感じに眼ますが。 単純に考えて、$id = $this->m_overlap->check_overlap( の部分をコメントにすると通るということですが、 $line = array(); $query = $this->db->query("reservation"); これが原因かと。 QUERYメソッドを渡すところで、 reservation となっています。 そんなSQLはありません ということですね。 >こんにちは、kazです。 > >dbのデータ挿入でどうしてもわからないのでご教授お願いします。 > >問題の部分のみをコピーします。 >if (mktime(0, 0, 0, $Month, $Date, $Year) < mktime(0,0,0,date("m"),date("d")- >1,date("Y")+1)) { > $id = $this->m_overlap->check_overlap($tuner,$kind,"","", >$new_rec_time); //重複チェック > if (count($id) == 0){ > $data['comment'] = "N"; > $data['type'] = 0; > $data['rec_when'] = $Year . "." . $Month . "." . $Date; > $data['start_time'] = $Hour . "." . $Minute; > $data['rec_time'] = $new_rec_time; > $data['station'] = $station; > $data['bitrate'] = $bitrate; > $data['program'] = $program; > $data['script'] = $script; > $data['tuner'] = $tuner; > > $this->db->insert('reservation', $data); //新規予約登録 > >$this->db->insert('reservation', $data);でブラウザにエラーが表示されます。 >apacheにはエラーはでてません。 > >A Database Error Occurred >Error Number: 1064 >You have an error in your SQL syntax; check the manual that corresponds to >your MySQL server version for the right syntax to use near 'reservation' at >line 1 >reservation > >しかし、$id = $this->m_overlap->check_overlap($tuner,$kind,"","", >$new_rec_time); をコメントにするとDBにデータが挿入されます。 > >その部分は以下(余分名部分は削除してます)ここではテーブルreservationのデータ >を読み込んでるだけです。 ><?php > >class M_overlap extends Model{ > > function M_overlap(){ > parent::Model(); > } > > function check_overlap($tuner,$kind,$week="",$week_num="",& >$new_rec_time) > { > $line = array(); > $query = $this->db->query("reservation"); > if ($query->num_rows() > 0) //予約リストの有無確認 > { > 処理 > foreach ($query->result() as $row) > { > 処理 > } > } > } > >?> > >なぜこのモデルm_overlapがあるとDatabase Errorが発生するのかわかりません。 >宜しくお願いします。 > >_______________________________________________ >Codeigniter-users mailing list >Codei****@lists***** >http://lists.sourceforge.jp/mailman/listinfo/codeigniter-users