質問 > 管理機能 > PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
akiakihi |
投稿日時: 2019/6/27 0:56
対応状況: −−−
|
一人前 登録日: 2014/7/17 居住地: 兵庫県 投稿: 91 |
PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる [EC-CUBE] 3.0.17
[レンタルサーバ]さくらインターネット [OS] Windows10 [PHP] PHP Version 7.3 [データベース] MySQL 5.7 [ブラウザ] Chrome さくらインターネットより、 「ご利用のさくらのレンタルサーバにおきまして、2019年7月3日(水)にPHPのバージョンを7.2から「7.3」へ自動的に変更させていただきます。」 との案内が来たので、 ローカルでEC-CUBE3のPHP7.3 での動作確認後(vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php の2640行目だけ、continueをbreakにしました。) 本番サーバー(さくら)にてPHP7.3にして動作確認してみたところ、 商品購入後の完了画面で、エラーが表示されてしまいました。 エラー文章 引用: ContextErrorException in AbstractToken.php line 164: 購入者のデータが正しく unserialize出来ないようです。 関係あるかわかりませんが、phpエラーログに a:4:{i:0;O:20:"Eccube\Entity\Member":14:{s:24:" a:4:{i:0;O:22:"Eccube\Entity\Customer":40:{s:26:" というような記述がありました。 後数日でサーバーのPHPが強制移行されてしまうため、 解決方法がございましたら、ご教授の程どうぞよろしくお願いいたします。 (エラー本文を載せていましたが、長いため削除しました) |
red |
投稿日時: 2019/6/27 8:16
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1574 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる
|
akiakihi |
投稿日時: 2019/6/27 9:03
対応状況: −−−
|
一人前 登録日: 2014/7/17 居住地: 兵庫県 投稿: 91 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる ご返信ありがとうございます!
こちらのページ、先に拝見しており、クッキーを削除してみましたが、改善されませんでしたm(_ _)m |
kishikawa |
投稿日時: 2019/6/27 10:27
対応状況: −−−
|
一人前 登録日: 2018/12/20 居住地: 松戸 投稿: 89 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる https://github.com/symfony/symfony/issues/29459
こちらを見つけましたが、追っていくとphpのバグということで、 しかもまだ修正されていないようです・・・ https://bugs.php.net/bug.php?id=77302 symfonyの方の以下の回答が少しヒントになりそうですが https://github.com/symfony/symfony/issues/29459#issuecomment-445457394 こちらでは動かしていないのでどうなるかわかりません。 |
3tiles |
投稿日時: 2019/6/27 10:56
対応状況: −−−
|
一人前 登録日: 2019/6/19 居住地: 投稿: 80 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる 引用:
ですが、該当のバグレポートのStatusはClosedになっていないようですが、 引用:
とのことで、 https://github.com/php/php-src/commit/af324e24df85022314787f6dcf2ac811f58b88f3 で、修正されているようで、PHP7.3.4以降に反映されているようです。 ご利用のPHPのバージョンは7.3とのことですが、7.3.4未満であれば最新のバージョン等で再度試してみては如何でしょうか?
|
akiakihi |
投稿日時: 2019/6/27 15:14
対応状況: −−−
|
一人前 登録日: 2014/7/17 居住地: 兵庫県 投稿: 91 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる ご丁寧にありがとうございます。
PHPのバージョンを確認しましたところ、PHP7.3.6でした。 試しにもう一度購入処理をしてみましたが、購入完了画面で同様のエラーとなってしまいました。 (受注は出来ています) ローカルのPHP7.3.6では問題なく動いているので、一つずつ、本番環境とローカルのファイルを確認してみます。 |
3tiles |
投稿日時: 2019/6/27 20:00
対応状況: −−−
|
一人前 登録日: 2019/6/19 居住地: 投稿: 80 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる https://github.com/symfony/symfony/issues/29459
に関して、もう少しみてみると、 引用:
のレスにて、 https://github.com/symfony/symfony/pull/28072/files#diff-3f33c4b578f7ceb90dae8836c3c9a9a7R173 が原因と言及されていて、 引用:
のレスで、 https://github.com/symfony/symfony/pull/29621 にて修正されているようです。 ( https://github.com/symfony/symfony/pull/29621/commits/a8eba803a35994628387678d6d3890f0f4f2bc56 ) ただ、このIssueは3.4系のSymfonyのものなので、エラー内容は良く似ているようですが、EC-CUBE3系のベースとなっている2.7系とは話が違うかもしれません。 引用:
ローカルの方だと問題ないるなら、本番環境とのvendorディレクトリー以下のライブラリのバージョンの違いとか無いですかね? Symfony周りのライブラリのバージョンが違っているとか。
|
akiakihi |
投稿日時: 2019/6/28 0:09
対応状況: −−−
|
一人前 登録日: 2014/7/17 居住地: 兵庫県 投稿: 91 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる ご丁寧にありがとうございます!
ローカル環境と本番環境のEC-CUBEは同じものをインストールしているので、各ファイルのバージョンに違いはありません。 ローカルとさくらインターネットの環境とでは、なにかが違うのだとは思いますが、 phpinfoを見た限りでは、unserializeに関連がありそうなmbstring関連項目に違いはありませんでした。 おっしゃる通り、EC-CUBE3系のSymphony2.7と、最新のSymphony3.4とでは、該当部分の記述が異なるようですので、上記修正をそのまま適用することが出来ません。 素人ですので厳しいですが、両者の違いをもう少し詳しく調べてみようと思います。。。 さくらインターネットでEC-CUBE3系を運用されている方は多くいらっしゃると思うのですが、 このほどのPHP7.3 への強制移行について、対応はどうされるかご意見をいただけると嬉しいです。 |
nanasess |
投稿日時: 2019/6/28 9:18
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2315 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる 3.0.18 ではいかがでしょうか。
https://github.com/EC-CUBE/ec-cube/pull/2865 https://github.com/EC-CUBE/ec-cube/pull/4168 Customer や Member を正しく serialize/unserialize できるようになっているはずです https://www.ec-cube.net/news/detail.php?news_id=332 一応、手元の PHP7.3.5 で、 EC-CUBE3.0.18 になる予定の 3.0 ブランチで、該当の Notice が出ることなく動作しました |
akiakihi |
投稿日時: 2019/6/28 14:16
対応状況: −−−
|
一人前 登録日: 2014/7/17 居住地: 兵庫県 投稿: 91 |
Re: PHP7.3にした後、商品購入をすると、購入完了画面でunserializeエラーになる なんと、タイムリーなバージョンアップ、ありがとうございます!!!
こちらのニュースに気付いておりませんでした。 とても助かります。 これからローカルと本番環境、共にPHP7.3.6にて試してみようと思います。 結果について、またご報告させてください。 |
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |