- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MySQLに格納できない)
MySQLに格納できない?INSERT INTOの構文が間違っているかもしれません
このQ&Aのポイント
- MySQLのINSERT INTOの構文が間違っていると、エラーが出ます。DB接続は問題ありませんが、テーブル名やフィールド名に誤りがある可能性があります。具体的には、テーブル名は「db_touroku」、フィールドには「id」「mailaddress」「created」があります。ユーザーはメールアドレスをフォームに入力し、「submit」をクリックすると、touroku.phpに移動します。idはauto_incrementを使用しています。
- 実際のtouroku.phpのコードでは、SQL文が間違っています。VALUESの後ろにカッコが閉じられていません。正しいコードは、「INSERT INTO db_touroku VALUES (0, 'メールアドレス', '登録日')」です。メールアドレスと登録日は実際の値に置き換える必要があります。
- 構文が間違っている場合は、エラーが発生します。具体的なエラーメッセージが表示されるか、ログファイルに書き込まれるかもしれません。エラーメッセージを確認し、問題を特定して修正してください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> $sql = sprintf('INSERT INTO db_touroku VALUE("%d" ,"%s" ,"%s"',0,mysql_real_escape_string($_SESSION['join']['mailaddress']),date('Y-m-d H:i:s')); よくわかりませんが ・"%d"に0を渡していますが結果は"0"になると思います。テーブル項目の型と一致していますか。
お礼
回答ありがとうございます。 "%d"の部分の""を取り除いてみると、うまく格納できました! 0を渡していますがauto_incrementを指定しているのでidも順番どおりに動いてくれました。 説明不足ですみませんでした><