Invalid parameter number: parameter was not definedというエラーの解決方法について
エラーの内容
「パラメータが定義されてない」という内容のようなので、SQL文自体の書き方を見直し、直接PHPMYAdmin内で実行してみましたが実行できてしまったため、何が原因か困っていたところこちらの記事を見つけました。
記事を参考にし、「予約語」を使っていないか確認したところ、カラム名の「data」が予約語でした。
予約語についてはこちら
https://dev.mysql.com/doc/refman/8.0/en/keywords.html
バッククォートを使用すると予約語でも使えるようですが、不安要素をわざわざ残してしまってはいけないので、カラム名を予約語から変更し、SQL文もカラム名に合わせて直して、無事データが登録できて終わりました。
ただ、リファレンスを見るとcommentも予約語のはずなのですが、こちらはエラーがでておらず、なぜ大丈夫だったか今のところ分かっておりません。
分かり次第追記したいと思いますが、まずは予約語は使用しないということを今後守っていきたいと思います。