• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLで、INSERT文でエラー)

MySQLで、INSERT文でエラー

このQ&Aのポイント
  • MySQLのINSERT文でエラーが発生しました。
  • スクリプトを実行した際に、返り値が空でした。
  • 問題の原因を特定し、解決する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>ちなみに、phpMyAdminのデータがなかったという状態です。 であれば >$sql = "INSERT INTO ideamemo_table (color, title, contents, create) VALUES ('$color', '$title', '$contents', '$create');"; で与えている各変数$color,$title,$contents,$createがきちんと入っていないのかも この直後に以下をして確認してみてください print $sql; また、mysql_query($sql, $con);がエラーを吐いているかもしれないので mysql_query($sql, $con) or die(mysql_error()); でエラーを拾うのも手です。 >mysqli()関数などを用いた方がいいってことですよね? mysql_関数から一番移植性が高いのはmysqli_関数の手続き型です。 ただしあくまでもコンパチな機能なので可能であればPDOなど 現時点で標準的な仕様に切り替えた方がよいとおもいます

beterugius
質問者

お礼

詳しいご回答、どうも有難うございました。

beterugius
質問者

補足

INSER INTO (color.title,contents,create,update) VALUES('$color', '$title', 'contens'. '$create', '$update') の、テーブルのカラム名に、createや、update という、SQLの予約語?というものが エラーだったようです。 おかげ様で、 INSER INTO (color.title,contents,create,update) VALUES('$color', '$title', 'contens'. '$create_date', '$update_date') にしたら、phpMyAdminにデータが入ってきました!^^ どうも御親切にありがとうございました。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>返り値が空でした(行数0) ( クエリの実行時間 0.0010 秒 ) と表示されます。 >どこが間違ってるのでしょうか。 INSERT文は挿入するだけなので戻り値は空だとおもいますが? 挿入したデータがみたいならSELECT文でみてください (それともINSERTしたあとにphpMyAdminで確認したらデータがなかったという意味でしょうか?) ちなみに ・SET NAMES utf8を生で発行することも ・mysql_query()という古い仕組みをつかうことも ・VALUES ('$color', '$title', '$contents', '$create');のようにエスケープせずに  SQLを実行することも 全体的にダメダメな状態です。 なにを参考にされたかわかりませんが、すこし新しめの情報を吸収した方が よいように思います。

beterugius
質問者

お礼

詳しいご回答どうも有難うございました。

beterugius
質問者

補足

mysqli()関数などを用いた方がいいってことですよね? ちなみに、phpMyAdminのデータがなかったという状態です。

関連するQ&A