0

私はこの声明を持っています:

   $query="INSERT INTO error_report(task_id,url_is_route, forbidden_word, google_host_fail, google_cache_fail, google_title_fail, google_element_fail, robots_noindex_nofollow, xrobots_noindex_nofollow, title_fetch_warn, h1_fail,h2_fail,h3_fail ,h1_warn ,h2_warn, h3_warn)
         VALUES (".$this->task_id.",0,0,0,0,0,0,0,0,0,0,0,0,0,0)";   


mysql_query($query) or die(mysql_error()); 

私はこれを得る:

SQL 構文にエラーがあります。2 行目の「0,0,0,0,0,0,0,0,0,0,0,0,0,0)」付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

問題はどこにありますか?

アップデート

$query="INSERT INTO error_report(task_id,url_is_route, forbidden_word, google_host_fail, google_cache_fail, google_title_fail, robots_noindex_nofollow, xrobots_noindex_nofollow, title_fetch_warn, h1_fail,h2_fail,h3_fail ,h1_warn ,h2_warn, h3_warn)
             VALUES ('".$this->task_id."','0','0','0','0','0','0','0','0','0','0','0','0','0','0')"; 

今私は得る:

不正な整数値: 行 1 の列 'task_id' の ''

4

4 に答える 4

2

不正な整数値:行1の列'task_id'の''

$this->task_idは空であり、疑わしいように116は含まれていません。

于 2012-04-30T06:29:54.877 に答える
2
  1. 引用符を使用する
  2. 16 列を更新しようとしていますが、15 の値しか入力していません。それを修正します。
于 2012-04-30T06:20:47.287 に答える
1

これらを確認してください

  1. $ this-> task_idには値が含まれていますが、空ではありません
  2. $ this-> task_idには、整数値または任意の文字が含まれています。列はintだと思うので、整数以外の値が含まれているとエラーが発生します
于 2012-04-30T06:29:47.343 に答える
1

フィールドのデフォルト値を0に設定して、次のことを行うのはどうですか。


$query="INSERT INTO error_report(task_id) VALUES (".$this->task_id.")";   
于 2012-04-30T06:16:23.493 に答える