コンテンツ管理で新規ブログを作成時にエラー

KOJI1234 > コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/17 16:31
いつもお世話になっております。
さて、新規ブログを作成しようとした際に、次のSQLエラーが発生します。
エラー: SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 'comment_approve' at row 1

データベースのBlogテーブルのcomment_approveフィールドは、intですが、
lib/Baser/Plugin/Blog/Model/BlogContent.phpのファイルのgetDefaultValueの関数の中で
$data['BlogContent']['comment_approve'] = false;
となっています。
$data['BlogContent']['comment_approve'] = 0;
であれば正常に作成できますので、ご確認いただけますか?

■ BaserCMSのバージョン:4.0.4
■ テンプレート:bccolumn
■ サーバー名:CentOS7
■ スマートURLの利用:ON
■ 設置フォルダ:サブフォルダ
■ 利用しているデータベース:MySql5.7
akillerbee > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/19 2:15
こんばんはakillerbeeです。

確認しているのですが同様のエラーが確認できません。
宜しければPHPバージョン等も教えてもらえますか?
KOJI1234 > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/22 12:02
akillerbeeさん、こんにちは。

phpのバージョンは、7.0.18 です。
akillerbee > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/24 11:53
こんにちはakillerbeeです。
ありがとうございます。

MySQLのSQLモードに「STRICT_TRANS_TABLES」が入っていますか?
入っている場合で変更が可能でしたら下記のように変えると解消されるのではないかと思います。
https://amg-solution.jp/blog/7866


sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

sql_mode=NO_ENGINE_SUBSTITUTION

KOJI1234 > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/24 14:58
akillerbeeさん、こんにちは。

STRICT_TRANS_TABLESがデフォルトで設定されているようです。
ただ、DBはクラウドのアプリケーションサービスを使用しているので、設定変更はできません。

php7では、falseの値が0でないので、
comment_approveにデフォルト値を入れるか、
$data['BlogContent']['comment_approve'] = 0;
に設定するというのはいかがでしょうか?

akillerbee > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/26 14:03
こんにちはakillerbeeです。

詳細確認できていないですがこちらでも動作するのではないかと思います。
$data['BlogContent']['comment_approve'] = 0;
KOJI1234 > Re: コンテンツ管理で新規ブログを作成時にエラー @ 2017/5/26 15:10
akillerbeeさん、こんにちは。

それではとりあえず、MySql5.7以上およびphp7以上の場合は、
$data['BlogContent']['comment_approve'] = 0;
で対応するようにします。

ありがとうございました。
ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
8 人のユーザが現在オンラインです。 (8 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 8