SOY CMSアップデートによるSOY Inquiryエラー 投稿する

投稿者:伊都佐知子  投稿日時:2024-03-15 12:06:07
お世話になります。
SOYのバージョンを変更した際、問い合わせフォームでエラーが出るようになりました。

簡単な情報をお伝えしますので、原因についてご教示願います。
【アップデート前】
SOY CMS version: 3.0.2
SOY Inquiry version: 1.2.0
さくらインターネット
Perlのバージョン:5.14.4
PHPのバージョン:7.4.33 (モジュールモード)

【1】SOY CMS最新アップデート
SOY CMS version: 3.14.14
SOY Inquiry version: 1.2.0
さくらインターネット
Perlのバージョン:5.14.4
PHPのバージョン:7.4.33 (モジュールモード)

▼問い合わせフォーム送信時のエラー
Fatal error: Uncaught TypeError: Argument 2 passed to SOY2Mail::addRecipient() must be of the type string, null given, called in /home/xxx/www/soycms/app/webapp/inquiry/src/logic/MailLogic.class.php on line 95 and defined in /home/xxx/www/soycms/common/lib/soy2_build.min.php:6864 Stack trace: #0 /home/xxx/www/soycms/app/webapp/inquiry/src/logic/MailLogic.class.php(95): SOY2Mail->addRecipient() #1 /home/xxx/www/soycms/app/webapp/inquiry/src/logic/MailLogic.class.php(182): MailLogic->sendMail() #2 /home/xxx/www/soycms/app/webapp/inquiry/page.php(367): MailLogic->sendNotifyMail() #3 /home/xxx/www/soycms/app/webapp/inquiry/page.php(341): SOYInquiry_PageApplication->sendEmail() #4 /home/xxx/www/soycms/app/webapp/inquiry/page.php(184): SOYInquiry_PageApplication->addInquiry() #5 /home/xxx/www/soycms/app/webapp/inquiry/page.php(470): SOYInquiry_PageApplication->getForm() #6 /home/xxx/www/soycms/common/lib/soy2_build.min.php(4658): SOYInquiry_FormComponent->execute() #7 /home/xxx/www/soycms/common/lib/soy2_build.min.php(4676): HT in /home/xxx/www/soycms/common/lib/soy2_build.min.php on line 6864

【2】SOY Inquiry最新アップデート
SOY CMS version: 3.14.14
SOY Inquiry version: 2.8.0
さくらインターネット
Perlのバージョン:5.14.4
PHPのバージョン:7.4.33 (モジュールモード)

▼SOY Inquiryログイン時のエラー
Fatal error: Declaration of SOYInquiry_InquiryDAOImpl::updateFlagById($id, $flag) must be compatible with SOYInquiry_InquiryDAO::updateFlagById(int $id, int $flag, int $updateDate) in /home/xxx/www/soycms/app/cache/inquiry/3.14.14_dao_cache_SOYInquiry_InquiryDAOImpl_62cc15aef33e792528754cd07db09a03.class.php on line 34

【3】サーバーアップデート
SOY CMS version: 3.14.14
SOY Inquiry version: 2.8.0
さくらインターネット
Perlのバージョン:5.32.1
PHPのバージョン:8.3.2 (モジュールモード)

▼SOY Inquiryログイン時のエラー
Fatal error: Declaration of SOYInquiry_InquiryDAOImpl::updateFlagById($id, $flag) must be compatible with SOYInquiry_InquiryDAO::updateFlagById(int $id, int $flag, int $updateDate) in /home/xxx/www/soycms/app/cache/inquiry/3.14.14_dao_cache_SOYInquiry_InquiryDAOImpl_62cc15aef33e792528754cd07db09a03.class.php on line 34
投稿者:齋藤毅  投稿日時:2024-03-15 12:57:23
ようこそSOY CMSへの画面でキャッシュを削除してみてください。
最後のご報告にあります
Fatal error: Declaration of SOYInquiry_InquiryDAOImpl::updateFlagById($id, $flag) must be compatible with SOYInquiry_InquiryDAO::updateFlagById(int $id, int $flag, int $updateDate) in /home/xxx/www/soycms/app/cache/inquiry/3.14.14_dao_cache_SOYInquiry_InquiryDAOImpl_62cc15aef33e792528754cd07db09a03.class.php on line 34
は解消されるかもしれません。
投稿者:伊都佐知子  投稿日時:2024-03-15 13:04:58
お世話になっております。
ログインの件はキャッシュ削除で解決いたしました。

サイトに設置しているフォームが
確認画面までは進みますが、送信完了の画面で表示がでず、メールの送信もできていない(管理画面で確認)ようです。

解決方法をご教示願いたいのですが、何か必要な情報はありますか?
投稿者:齋藤毅  投稿日時:2024-03-15 14:07:43
SOY Inquiry2.3以降のバージョンにバージョンアップする際の注意点に記載している方法を試してみてください。
投稿者:伊都佐知子  投稿日時:2024-03-15 14:26:12
ありがとうございます。
恐れ入りますが、記載されているこのディレクトリが存在しませんでした。
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/custom/form.php
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/custom/confirm.php

こちらのファイルでしょうか?
/CMSインストールディレクトリ\app\webapp\inquiry\src\template\default\form.php
/CMSインストールディレクトリ\app\webapp\inquiry\src\template\default\confirm.php

上記ファイルを確認したところ以下の記述はすでにございました。
<?php
$dummyFormObj = new SOYInquiry_Form();
$obj = $column->getColumn($dummyFormObj);

度々恐れ入りますが、ご確認いただけますようお願いいたします。
投稿者:齋藤毅  投稿日時:2024-03-15 14:42:43
SOY Inquiryの管理画面の方で、フォーム毎にデザインの設定があり、デザインはdefaultが設定されていますか?
それであれば
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/default/form.php
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/default/confirm.php
になります。

デザインをdefaultではないものを選択している場合は、ファイルが異なります。
デザインをcustomにしている場合は、
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/custom/form.php
/CMSインストールディレクトリ/app/webapp/inquiry/src/template/custom/confirm.php
になります。

とりあえず、フォームのデザインの設定をご確認ください。
投稿者:伊都佐知子  投稿日時:2024-03-15 14:51:19
ありがとうございます。
デザインはdefaultが設定を設定しておりました。
どうぞよろしくお願いいたします。
投稿者:齋藤毅  投稿日時:2024-03-15 14:55:48
さくらインターネットをご利用中とのことですので、下記のページを参考にしてエラーログの確認をお願いします。
https://pc.user-infomation.com/web-product_server/we_27.htm

確認内容は
確認画面までは進みますが、送信完了の画面で表示がでず、メールの送信もできていない(管理画面で確認)ようです。
の操作の直後のログのみです。
投稿者:伊都佐知子  投稿日時:2024-03-15 15:59:09
ありがとうございます。
ログ確認いたしました。
恐れ入りますが、ご確認いただけますようお願いいたします。

[Fri Mar 15 12:02:05.847478 2024] [suexec:notice] [pid 2652] AH01232: suEXEC mechanism enabled (wrapper: /usr/local/apache/bin/suexec)
[Fri Mar 15 12:02:05.847717 2024] [ssl:warn] [pid 2652] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.847720 2024] [ssl:warn] [pid 2652] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.847721 2024] [ssl:warn] [pid 2652] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.847722 2024] [ssl:warn] [pid 2652] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.973310 2024] [ssl:warn] [pid 2725] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Fri Mar 15 12:02:05.973324 2024] [ssl:warn] [pid 2725] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.973326 2024] [ssl:warn] [pid 2725] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.973327 2024] [ssl:warn] [pid 2725] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:05.973328 2024] [ssl:warn] [pid 2725] AH01916: Init: (xxx.xxx.xxx:443) You configured HTTP(80) on the standard HTTPS(443) port!
[Fri Mar 15 12:02:06.010029 2024] [mpm_prefork:notice] [pid 2725] AH00163: Apache/2.4.54 (Unix) OpenSSL/1.0.2-chacha configured -- resuming normal operations
[Fri Mar 15 12:02:06.010065 2024] [core:notice] [pid 2725] AH00094: Command line: '/usr/local/apache/bin/httpd -f /home/config/users/pos/http/user-httpd.conf'
投稿者:齋藤毅  投稿日時:2024-03-15 16:06:07
ログを確認する限りでは、エラーは出ていないようです。

/CMSインストールディレクトリ/app/webapp/inquiry/src/template/default/complete.php
を開いて、コードが書かれているか?を確認してみてください。
投稿者:伊都佐知子  投稿日時:2024-03-18 13:11:21
ありがとうございます。
complete.phpは以下となっております。

/CMSインストールディレクトリ/app/webapp/inquiry/src/template/default/complete.php

<table>
<tr>
	<td colspan="2">
	<?php $message = $config->getMessage(); echo $message["complete"]; ?>
	</td>
</tr>
</table>

<table>
<tr>
	<td>お問い合わせ番号:</td>
	<td><?php echo $inquiry->getTrackingNumber(); ?></td>
</tr>
<tr>
	<td>お問い合わせ内容:</td>
	<td><pre><?php echo $inquiry->getContent(); ?></pre></td>
</tr>
<tr>
	<td>お問い合わせ日時:</td>
	<td><?php echo date("Y-m-d H:i:s",$inquiry->getCreateDate()); ?></td>
</tr>
</table>
<a href="<?php echo $page_link; ?>">戻る</a>
投稿者:齋藤毅  投稿日時:2024-03-18 16:01:58
管理画面に初期管理者でログインし、バージョンアップの実行はしていますか?
投稿者:伊都佐知子  投稿日時:2024-03-19 13:08:35
ありがとうございます。
何度も恐れ入ります。

インストール直後に、管理画面に初期管理者でログインし、バージョンアップの実行しております。
キャッシュ削除も何度か試している状況です。

何か他に考えられる原因はございますでしょうか?
投稿者:齋藤毅  投稿日時:2024-03-19 14:17:56
あとはカラム毎に想定していない不具合が潜んでいる可能性があることです。

使用中のお問い合わせフォームで設置している項目の種別を教えてください。
投稿者:伊都佐知子  投稿日時:2024-03-22 09:01:32
いつもありがとうございます。
フォームで設置している種別は以下になります。
1項目目:チェックボックス
2項目目:1行テキスト
3項目目:電話番号
4項目目:[メールアドレス]
5項目目:1行テキスト
6項目目:複数行テキスト
何度もお手数をお掛けして大変恐縮ですが、どうぞよろしくお願いいたします。
投稿者:齋藤毅  投稿日時:2024-03-22 14:29:48
1項目目:チェックボックス
2項目目:1行テキスト
3項目目:電話番号
4項目目:[メールアドレス]
5項目目:1行テキスト
6項目目:複数行テキスト
で試してみましたが、記載されている症状にはなりませんでした。

あと考えられることはフォームごとに設定できるCAPCTHAやCSRF対策辺りの設定内容の見直しでしょうか。
ログインして投稿する