バージョン選択

フォーラム

メニュー

オンライン状況

55 人のユーザが現在オンラインです。 (40 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 54
emeed7733 もっと...

サイト内検索

バグ報告 > その他 > 管理画面のログインでエラー

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2006/12/1 0:50
対応状況: −−−
管理画面のログインでエラー
初めて投稿させていただきます。宜しくお願いします。
管理画面のログインでログインIDもしくはパスワードを
間違って入力した場合、
『IDまたはパスワードが正しくありません。』
というエラーメッセージがでるはずですが、
version1.0.1ではエラーメッセージではなく
『Fatal error: Internal Zend error - Missing class information for in /home/morry/public_html/eccube/data/lib/slib.php on line 204』
といったphpのエラーがでます。

サーバー環境は以下の通りです。

Fedora Core 4
PHPバージョン 4.4.1
MySQLバージョン 4.1.16

です。
こういったエラーは私だけなのでしょうか?
どうぞご教授いただけますよう宜しくお願いいたします。
nanasess
投稿日時: 2006/12/1 2:40
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: 管理画面のログインでエラー
大河内です。

エラーの内容を見るかぎりは、EC-CUBE の不具合ではなさそうですね。

EC-CUBE のプログラム自体は、正常にログインのエラーを処理し、PHP がエラーメッセージを出力しようとしている時に Zend API がエラーを出しているようです。

該当のエラーを出力している zend_compile.c のコードをざっと眺めてみましたが、PHP がプレコンパイルの失敗等で、関数をロードできない場合に、このようなエラーになるようです。

このエラーは、 version1.0.1 を使用した場合に、該当箇所で毎回出力されますか?

また、PHP は、どのようにインストールされましたか?
もう少しよく調べないと、正確な原因は解りませんが、PHP をインストールしなおしてみると良いかもしれません。

# 最新版である、 PHP4.4.4 をインストールすることをおすすめします。

できれば、 rpm 等のバイナリを使わずに、 ソースをビルドし、 make した後に、 make test を実行して、実行結果を確認した方が良いと思います。
ゲスト
投稿日時: 2006/12/1 15:27
対応状況: −−−
Re: 管理画面のログインでエラー
大河内さん有難うございます。
version1.0.1に間違ったIDでログインするたびに
同じエラーがおきます。
ただエラーがおきている箇所(data/lib/slib.php)のソースを見て
関数の内部クラスになっているLC_ErrorPage()クラスが同じファ
イル内でもう一箇所書かれていてクラス名を変えて見るとなぜか
エラーがでなくなりました。
この方法がいいのか分からないですが…
nanasess
投稿日時: 2006/12/1 18:55
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: 管理画面のログインでエラー
大河内です.

なるほど...
同名のインナークラスが悪さをしていそうな感じですね.
お互いに相殺しあって, 関数をロードできなくなっていそうです.
対処療法としては大丈夫かと思います.

しかし, 本質的に, 現状のようなコーディングは, あまり良くないので, 改善した方が良さそうですね.

# インナークラスとしなくても, 同じような振舞いをするクラスなので,
# setter, getter を使用して変数を外部からセットするようにしたら良いかと思います.

時間ができたら, パッチを作ってみようかと思います.

また, register_globals の値は on になっていませんか?
確認はしていませんが, register_globals = off の環境なら, インナークラスが相殺し合うことは無いはずで, register_globals = on の環境だと, このような現象も考えられるかなと思います.

通常なら parse error になってほしいところなんですけど...
nanasess
投稿日時: 2006/12/2 22:20
対応状況: 確認中
登録日: 2006/9/9
居住地:
投稿: 2313
Re: 管理画面のログインでエラー
大河内です。
安直な対応ですが、パッチを作ってみました。

Index: slib.php
===================================================================
--- slib.php    (revision 71)
+++ slib.php    (working copy)
@@ -198,15 +198,8 @@
 
 /* エラーページの表示 */
 function sfDispError($type) {
-
-       class LC_ErrorPage {
-               function LC_ErrorPage() {
-                       $this->tpl_mainpage = 'login_error.tpl';
-                       $this->tpl_title = 'エラー';
-               }
-       }
 
-       $objPage = new LC_ErrorPage();
+       $objPage = new LC_ErrorPage("login_error.tpl", "", "エラー");
        $objView = new SC_AdminView();
 
        switch ($type) {
@@ -240,15 +233,7 @@
                $objSiteSess->setNowPage('error');
        }
 
-       class LC_ErrorPage {
-               function LC_ErrorPage() {
-                       $this->tpl_mainpage = 'error.tpl';
-                       $this->tpl_css = '/css/layout/error.css';
-                       $this->tpl_title = 'エラー';
-               }
-       }
-
-       $objPage = new LC_ErrorPage();
+       $objPage = new LC_ErrorPage("error.tpl", "/css/layout/error.css", "エラー");
        $objView = new SC_SiteView();
 
        switch ($type) {
@@ -2694,4 +2679,16 @@
        print("<strong>**デバッグ中**</strong></div>\n");
 }
 
-?>
\ No newline at end of file
+class LC_ErrorPage {
+
+       var $tpl_mainpage;
+       var $tpl_css;
+       var $tpl_title;
+
+       function LC_ErrorPage($tpl_mainpage, $tpl_css, $tpl_title) {
+               $this->tpl_mainpage = $tpl_mainpage;
+               $this->tpl_css = $tpl_css;
+               $this->tpl_title = $tpl_title;
+       }
+}
+?>


しかし、元のエラーは当方の環境では再現できなかったので、これで修正可能かどうか確認できませんが、クラス名を変更することで修正できたということですので、このパッチでも修正できると思います。

ちなみに register_globals = On の環境でも再現しませんでした。
ゲスト
投稿日時: 2006/12/4 16:07
対応状況: −−−
Re: 管理画面のログインでエラー
大河内さん、どうもご親切に有難うございます。
返信が遅れましてどうもすみません。
サーバー側に問い合わせた所,.htaccessが利用できるとのことでしたので、register_globalsは.htaccessでOffにできてると思うのですが…
パッチまで作っていただい手有難うございます。
さっそくパッチを当てて試してみます。
どうもありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,782名です
総投稿数は109,972件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1644
8
red
1570
9
mcontact
1289
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.