質問 > その他 > PHPバージョン5.3.27変更に伴うエラーにつて |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
umenoki |
投稿日時: 2014/3/1 15:04
対応状況: −−−
|
新米 登録日: 2014/3/1 居住地: 投稿: 3 |
PHPバージョン5.3.27変更に伴うエラーにつて はじめて投稿します。ほぼ初心者です。
よろしくアドバイスをお願いします。 [EC-CUBE] 2.4.3 [レンタルサーバ] kagoyaサーバ 共用 [PHP] PHP5.3.27 [データベース] MySQL 4.1.21 [WEBサーバ] [ブラウザ] IE11 [現象] ECCUBE42.4.3を利用しており、現在借りている レンタルサーバ会社のPHPのバージョンが 変更前PHPバージョン:PHP5.2.17 変更後PHPバージョン:PHP5.3.27になり、運営中のサイトがエラーで埋め尽くされている状態です。 とりあえずの対処法と、根本的な解決→ECCUBEのバージョンアップ になるかと思いますが、その作業工程の分かりやすい方法があれば教えてください。よろしくお願いいたします。 |
snitta |
投稿日時: 2014/3/1 16:50
対応状況: −−−
|
一人前 登録日: 2013/10/3 居住地: 島根県 投稿: 100 |
Re: PHPバージョン5.3.27変更に伴うエラーにつて エラーの内容も転載して頂けるとより良い回答が得られます
まず暫定的な対応になりますが、発生しているエラーに合わせて修正が必要です。 PHP 5.3 への移行時で特に多いのは E_DEPRECATED の発生です。 http://svn.ec-cube.net/open_trac/browser/tags/eccube-2.4.3/data/class/SC_Initial.php#L102 この問題については上記個所を次のように修正して下さい。
その他のエラーはPHP公式のサイトにある互換性の情報を元に逐次修正する事になります。 詳細は以下のページの「下位互換性のない変更点」をご参照くださいませ。 http://docs.php.net/manual/ja/migration53.php 次にバージョンアップの作業方法です。 こちらは現在使用しているカスタマイズ済みの 2.4.3 とデフォルトの 2.4.3 との差分を取り、差分から得られたカスタマイズの内容を新しいバージョンに適用します。 最期にデータベースのデータも新しいバージョンのスキーマに合わせて修正を行って完了、かなと思います。 個人的にはデータベースが一番面倒そうです
|
umenoki |
投稿日時: 2014/3/1 23:08
対応状況: −−−
|
新米 登録日: 2014/3/1 居住地: 投稿: 3 |
Re: PHPバージョン5.3.27変更に伴うエラーにつて 迅速なご回答ありがとうございます、。エラーはページ内のヘッダーまでに数えられない行数で書かれています。またデザインないも画像も×になり、悲惨な状態です。
Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/DB.php on line 475 Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/DB.php on line 552 Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/DB.php on line 1129 Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/PEAR.php on line 557 Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/PEAR.php on line 560 上記はほんの一部です。 バージョンアップは、データベースのバックアップをとって、例えば新しいphpに対応のeccubeをサーバーにインストール(上書き)するようなイメージでしょうか? 作業が完了するまでサイトは見れない状態でしょか。またバージョンによって対応してない箇所等はどうすればよいのでしょうか。ほんとに初心者ですみません。お願いいたします。 |
snitta |
投稿日時: 2014/3/2 3:38
対応状況: −−−
|
一人前 登録日: 2013/10/3 居住地: 島根県 投稿: 100 |
Re: PHPバージョン5.3.27変更に伴うエラーにつて 順番にお答えさせて頂きます。
引用: Deprecated: Assigning the return value of new by reference is deprecated in /home/kirアカウント/public_html/data/module/DB.php on line 475 E_DEPRECATED がまさに発生していますね。 先述の error_reporting() を修正する方法で解決いたします。 引用: バージョンアップは、データベースのバックアップをとって、例えば新しいphpに対応のeccubeをサーバーにインストール(上書き)するようなイメージでしょうか? はいそうです。 上書きするのか置換するのかについては事情に合わせて選択します。 引用: 作業が完了するまでサイトは見れない状態でしょか。 いいえサービスは可能な限り止めないように行います。 例えば新旧二つのEC-CUBEがインストールされた状態にしておき、新版が稼働できる状態になったら停止時間を取って新旧入れ替える、というのが方法の一つです。 停止時間の内訳は「旧版から新版のデータ変換(変換プログラムは事前に用意しておきます)+最終確認」ぐらいですね。 引用: またバージョンによって対応してない箇所等はどうすればよいのでしょうか。 抽象的なご説明になり申し訳ないのですが状況に合わせて一つ一つ異なる対応が必要です。 「2.4.3 のここを 2.13.1 のここに移植したい」と言ったように具体的に分からない点をご質問して頂ければみなさんのご協力も得やすいです。
|
umenoki |
投稿日時: 2014/3/2 23:42
対応状況: −−−
|
新米 登録日: 2014/3/1 居住地: 投稿: 3 |
Re: PHPバージョン5.3.27変更に伴うエラーにつて ご丁寧に本当にありがとうございます。感謝です。何とか頑張ってみます。たぶんまたお聞きするかも知れませんがよろしくお願いします。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |