内容
設置したExpressフォームブロックで送信後の遷移先ページを設定していた場合、該当項目を編集し保存すると型エラーが発生し保存出来ない。
観測した際は設定を解除した際に発生しました。
環境
- ConcreteCMS Version 9.3.5
- PHP Version 8.3
- MySQL Version 8.1
最新版では解消されている可能性がありますが、該当箇所のコードに変更はないようです。
エラー箇所
ソースファイル concrete/blocks/express_form/controller.php
の save()
関数477行目。
$data['redirectCID'] = ($data['redirectCID'] === '') ? 0 : $data['redirectCID'];
で型変換のエラーが発生します。
save()
を下記の状態で Override することで回避出来ました。
application/blocks/express_form/controller.php
public function save($data)
{
$data['redirectCID'] = (integer) $data['redirectCID']; //型変換
parent::save($data);
}