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