• DBへインサートで
    きません。nullにチェックをしたのですがそれでもで...
  • ほんでぃほんでぃ 
    DBへインサートできません。nullにチェックをしたのですがそれでもできませんでした。ログを見ると[Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name. Please run mysql_upgradeと書いてあったんですがどうしたらいいでしょうか
    回答 4

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    テーブル名やカラム名は練習のものと同じになっていますか?
    同じであればmysqlサーバーのアップデートが必要そうなので、
    mampをアップデート出来るならしてみて下さい。

    https://www.webdlab.com/local/local-mamp-update_4_1_1/

    ほんでぃ 
    テーブル名やカラム名も同じで、mampも最新のものを使っていました。
    私が見ているエラーログはmanpの中のlogsファイルの中にあるmysql_error_log.errを見ていたのですがそもそもエラーログはここを見ることで正しいのでしょうか?動画ではphp.logにエラーを出していましたが、

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    ログファイルはphpで吐き出されるものとApacheサーバー、mysqlとでそれぞれありますが、今回はmysqlなので見ている場所は合っています。
    (phpのログにも一部のmysqlのエラーは表示されます)

    https://pc-karuma.net/mamp-error-file-log-full-path/

    mysqlが起動されている状態でターミナルから

    mysql_upgrade -u root

    と打ってみて解消されますか?

    ほんでぃ 
    mysqlが起動している状態でmysql_upgrade -u rootを打つと
    -bash: mysql_upgrade: command not foundと、なり解消できてないです

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    一度mampを削除して再度サイトからダウンロードしてきてインストールしてみてください。

    ほんでぃ 
    もう一度インストールしましたができなかったです、、、
    次にPDO::ERRMODE_SILENTをPDO::ERRMODE_EXCEPTIONを変えてみるとsignup.phpで登録内容を送信できず、「エラーが発生しました。しばらく経ってからやり直してください。」と表示されました。このことからSQL文の書き方が悪くてエラーとなっている可能性があると思うのですが、どうしたらいいでしょうか

    返信者画像

    ウェブカツ!!コーチ 
    講師からの回答
    それは別のエラーでしょうか?
    当初のエラーはそのまま変わらず、pdoの設定を変えたところ、別のエラーが出てしまったということてすか?

    sql文の書き方が悪いかは、書いたsqlをphpMyAdminの管理画面のsqlタブから直接SQLを実行してみて問題なければ誤っていない事がわかります。

    ほんでぃ 
    当初のエラーはそのまま変わらず、pdoの設定を変えたところ、別のエラーが出てしまったということでしたが、無事解決できました
    原因はmysqlのlogin_timeが不注意でdatetimeであるべきがintになっていました
    お騒がせしてすみませんでした!