Ticket #276 (closed バグ指摘: 修正済)
帳票機能でFatal error: Cannot redeclare class fpdi …のエラーがでる。
| Reported by: | homan | Owned by: | adachi |
|---|---|---|---|
| Priority: | 中 | Milestone: | EC-CUBE2.5.0alpha |
| Component: | 管理画面 | Version: | 2.4.0RC-1 |
| Keywords: | redeclare class fpdi fpdf 帳票 エラー | Cc: | |
| 修正済み: |
Description
Xbitサーバーを利用されている方の場合、帳票機能を利用しようとすると以下のようなエラーが表示され利用できない(ver1.5.0β、ver2.2.0βともに)。
Fatal error: Cannot redeclare class fpdi in /home/httpd/vhosts/watercooling-club.com/httpdocs/data/pdf/fpdi.php on line 28
エラーの内容は fpdi のクラスが重複しているということだが、 他の環境では正常に動作している(ように思う)ので、 Xbit特有か、もしくはdataディレクトリを移動した場合にどこかで不具合が起こっている可能性がある。
<備考> Xbitサーバーの場合、WEB公開ディレクトリ「httpdocs」以下に、htmlディレクトリの中身およびdataディレクトリを設置する形でインストールする。
・/home/httpd/vhosts/ドメイン/httpdocs/htmlの中身 ・/home/httpd/vhosts/ドメイン/httpdocs/data
Change History
comment:2 Changed 18 years ago by nanasess
PHP のバージョンに応じて処理を変更するよう修正
Index: fpdi.php
===================================================================
--- fpdi.php (リビジョン 17259)
+++ fpdi.php (作業コピー)
@@ -460,7 +460,9 @@
}
// for PHP5
-if (!class_exists('fpdi')) {
- class fpdi extends FPDI {}
+if (version_compare("5", PHP_VERSION, "<")) {
+ if (!class_exists('fpdi')) {
+ class fpdi extends FPDI {}
+ }
}
-?>
\ No newline at end of file
+?>
comment:3 Changed 18 years ago by homan
v1.5.0βの方は、上記部分ををコメントアウトすることで解決できたようです。 v2.2.0βの方はダウンロードはうまくいったようですが、ブラウザ表示はできなかったようです。 (PCのスペックによる問題の可能性があります)
取り急ぎ連絡まで。
comment:4 Changed 18 years ago by nanasess
- Owner changed from somebody to nanasess
- Status changed from new to assigned
r17260 で修正を commit しました.
当方では, 不具合を再現できませんので, 修正をご確認頂ければ幸いです.
comment:6 Changed 18 years ago by adachi
- Owner changed from nanasess to adachi
- Status changed from assigned to new
comment:7 Changed 17 years ago by nakanishi
- Version set to 2.3.0RC-1
- Milestone changed from EC-CUBE2.3.0 to EC-CUBE2.3.1
comment:9 Changed 17 years ago by takegami
- Version changed from 2.3.0RC-1 to 2.4.0RC-1
- Milestone changed from EC-CUBE2.x.x to EC-CUBE2.4.0
comment:11 Changed 16 years ago by nanasess
- Milestone changed from EC-CUBE2.x.x to EC-CUBE2.5.0
r17260 の修正で良さそうですので milestone:EC-CUBE2.5.0 へ変更します
comment:12 Changed 16 years ago by nanasess
- Status changed from new to closed
- Resolution set to 修正済
version-2_5-dev ブランチで対応済みになりますので close します

下記が原因でしょうか?
fpdi.php
// for PHP5if (!class_exists('fpdi')) {class fpdi extends FPDI {}}?>No newline at end of file