soyshop_2.9.2 PHP8.2でのエラー(delivery_each_product) 投稿する

投稿者:Huckle Berry  投稿日時:2023-09-12 15:50:20
お世話になります。

soycms3.13.6
soyshop2.9.2

にバージョンアップしました。

PHP8.2にしたところ、いくつかエラーが出たので質問させてください。

ショッピングカート
全ページにおいて

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/module/plugins/delivery_each_product/soyshop.delivery.php on line 70

こちらが4行表示されます。

カートは進めることができ途中で

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 265

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 269

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 272

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 279

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 282
Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 302

がエラー追加される状態です。

対処方法があれば教えていただきたいです。
投稿者:齋藤毅  投稿日時:2023-09-12 16:16:01
エラー報告をありがとうございます。
エラーメッセージを参考に修正したものをダウンロードできるようにしました。
修正版は下記のURL先のページでダウンロードできます。
https://saitodev.co/soycms/soyshop/
投稿者:Huckle Berry  投稿日時:2023-09-15 10:17:10
/delivery_each_product/soyshop.delivery.php
のエラーは解消されましたが

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 265

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 269

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 272

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 279

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 282
Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 302
はまだ表示されています。

PHP8.0にしても同様でした。

振込だと注文完了しますがクレジットカードだとエラー表示です。
投稿者:齋藤毅  投稿日時:2023-09-15 15:36:01
他の改修を行いました。
修正版は下記のページからダウンロードできます。
https://saitodev.co/soycms/soyshop/
投稿者:Huckle Berry  投稿日時:2023-09-19 10:03:33
Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 272

Warning: Trying to access array offset on value of type null in /インストールディレクトリ/cms/soyshop/webapp/src/cart/_common/pages/Cart04Page.class.php on line 282

この2つのエラーがまだ残っています。

272行目
		$nameFull = $send["name"];
		if(isset($send["reading"]) && strlen($send["reading"])) $nameFull .= " (" . $send["reading"] . ")";
		$this->addLabel("send_name_full", array(
			"text" => $nameFull
));
282行目
$addrTxt = SOYShop_Area::getAreaText((int)$send["area"]);
		$this->addLabel("send_area", array(
			"text" => $addrTxt
));

こちらでしょうか。修正おしえていただければファイル買い替えて対応します。
投稿者:齋藤毅  投稿日時:2023-09-19 10:09:14
$nameFull = $send["name"];

$nameFull = (isset($send["name"])) ? (string)$send["name"] : "";
に変更

$addrTxt = SOYShop_Area::getAreaText((int)$send["area"]);

$addrTxt = (isset($send["area"])) ? SOYShop_Area::getAreaText((int)$send["area"]) : "";
に変更すればいけるはずです
投稿者:Huckle Berry  投稿日時:2023-09-19 10:35:55
修正すれば、エラーの出力はなくなりました!
クレジット決済モジュールの方でエラー発生したのでまた別トピック作成させていただきます。
ログインして投稿する