バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > システムエラーが発生しました。

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
happy
投稿日時: 2014/8/21 23:17
対応状況: −−−
半人前
登録日: 2014/8/21
居住地:
投稿: 12
システムエラーが発生しました。
お世話になります。

管理画面>受注管理>編集
と進むと、システムエラーが発生しました。大変お手数ですが、サイト管理者までご連絡ください。 と出てしまいます。

どうしたら元通りに直せるのかが、分かりかねます。
お手すきで、どうかお力添えをお願いいたします。

以下がエラーログになります。


Fatal error(E_USER_ERROR): DB処理でエラーが発生しました。
SQL: [SELECT id, name FROM mtb_country ORDER BY rank ]
MDB2 Error: no such table
prepare: [Error message: Unable to create prepared statement handle]
[Last executed query: DEALLOCATE PREPARE mdb2_statement_pgsql_4ac8d87a7a20282ab855356cb1890fdf28462727c]
[Native message: ERROR: relation "mtb_country" does not exist at character 22]
on [/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(1008)] from 115.163.190.103
login_id = takenaka(0)[nuiu6e632ci4ah3t53vskm4me5]
/home/takenaka-kaisan.com/data/public_html/admin/order/edit.php(33): LC_Page_Admin_Order_Edit_Ex->init
/home/takenaka-kaisan.com/data/eccube/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php(47): LC_Page_Admin_Order_Edit->init
/home/takenaka-kaisan.com/data/eccube/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(101): SC_DB_MasterData->getMasterData
/home/takenaka-kaisan.com/data/eccube/data/class/db/SC_DB_MasterData.php(80): SC_DB_MasterData->createCache
/home/takenaka-kaisan.com/data/eccube/data/class/db/SC_DB_MasterData.php(257): SC_DB_MasterData->getDbMasterData
/home/takenaka-kaisan.com/data/eccube/data/class/db/SC_DB_MasterData.php(311): SC_Query->select
/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(167): SC_Query->getAll
/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(279): SC_Query->prepare
/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(949): SC_Query->error
/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(1008): trigger_error
yuh
投稿日時: 2014/8/21 23:56
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: システムエラーが発生しました。
no such tableなんでmtb_countryのテーブルが無いのが原因と思います。
とりあえずDB周りを確認してみるといいんじゃないでしょうか?
happy
投稿日時: 2014/8/22 10:39
対応状況: −−−
半人前
登録日: 2014/8/21
居住地:
投稿: 12
Re: システムエラーが発生しました。
回答ありがとうございます。
DBの知識が乏しいので苦戦しております。
教えて頂いた通り、
[/home/takenaka-kaisan.com/data/eccube/data/class/SC_Query.php(1008)] from 115.163.190.103
ここのソースを開いて
mtb_country
を検索したところ、mtb_countryもcountryすらもありませんでした。

どうしたら、このエラーは直せるのでしょうか?
教えていただきたいです、宜しくお願いいたします。
s_goto
投稿日時: 2014/8/22 12:36
対応状況: −−−
常連
登録日: 2013/11/28
居住地:
投稿: 52
Re: システムエラーが発生しました。
/home/takenaka-kaisan.com/data/eccube/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php(47)

↑を調べてはいかがでしょうか?

mtb_countryを参照していませんか?
oda
投稿日時: 2014/8/22 12:44
対応状況: −−−
半人前
登録日: 2012/2/17
居住地:
投稿: 16
Re: システムエラーが発生しました。
> どうしたら、このエラーは直せるのでしょうか?

取り急ぎはmtb_countryがないのが問題なのでDBにテーブルを作ってあげる必要があります。


CREATE TABLE mtb_country(
    id smallint,
    name text,
    rank smallint NOT NULL DEFAULT 0,
    PRIMARY KEY (id)
);


次の問題としてEC-CUBE標準でそのようなテーブルはないので
カスタマイズで増やしているのだと思います。
マスタテーブルに値が入っていないことで予期しない動作になる可能性があります。
oda
投稿日時: 2014/8/22 13:00
対応状況: −−−
半人前
登録日: 2012/2/17
居住地:
投稿: 16
Re: システムエラーが発生しました。
> 次の問題としてEC-CUBE標準でそのようなテーブルはないので
> カスタマイズで増やしているのだと思います。
> マスタテーブルに値が入っていないことで予期しない動作になる可能性があります。

よく見たらEC-CUBE2.13.Xで増えていました。

試しにEC-CUBE2.13.2を動かしてみていますが普通にインストールされている場合は
問題なくmtb_countryが作成されています。

ここから先は可能性の問題ですが
EC-CUBE2.13以前のバージョンからプログラムソースのみを2.13.Xへ上書きされた場合はDB定義が異なるので上記エラーが出るかもしれません。
ただし、その場合はその他の場所でもエラーになりそうです。
happy
投稿日時: 2014/8/22 19:15
対応状況: −−−
半人前
登録日: 2014/8/21
居住地:
投稿: 12
Re: システムエラーが発生しました。
回答ありがとうございます
s_gotoさま。
FFFTPで接続し、
data/eccube/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php
を開いてみたら
<?php
/*
* This file is part of EC-CUBE
*
* Copyright(c) 2000-2012 LOCKON CO.,LTD. All Rights Reserved.
*
* http://www.lockon.co.jp/
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/

// {{{ requires
require_once CLASS_REALDIR . 'pages/admin/order/LC_Page_Admin_Order_Edit.php';

/**
* 受注修正 のページクラス(拡張).
*
* LC_Page_Admin_Order_Edit をカスタマイズする場合はこのクラスを編集する.
*
* @package Page
* @author LOCKON CO.,LTD.
* @version $Id: LC_Page_Admin_Order_Edit_Ex.php 21867 2012-05-30 07:37:01Z nakanishi $
*/
class LC_Page_Admin_Order_Edit_Ex extends LC_Page_Admin_Order_Edit {

// }}}
// {{{ functions

/**
* Page を初期化する.
*
* @return void
*/
function init() {
parent::init();
}

/**
* Page のプロセス.
*
* @return void
*/
function process() {
parent::process();
}

/**
* デストラクタ.
*
* @return void
*/
function destroy() {
parent::destroy();
}
}
と書いてあり、mtb_countryはありませんでした。
どうしたら良いでしょうか?
happy
投稿日時: 2014/8/22 19:19
対応状況: −−−
半人前
登録日: 2014/8/21
居住地:
投稿: 12
Re: システムエラーが発生しました。
回答有難うございます。
odaさま。
知識が浅い私にはなかなか理解が難しいです。


CREATE TABLE mtb_country(
id smallint,
name text,
rank smallint NOT NULL DEFAULT 0,
PRIMARY KEY (id)
);
このソースをどこかに上書きすれば良いのでしょうか?
k_kawamata
投稿日時: 2014/8/22 20:05
対応状況: −−−
新米
登録日: 2013/12/5
居住地:
投稿: 7
Re: システムエラーが発生しました。
ちょっと整理させていただきます。
想定される現象としては下記の流れかと思います。

?ソース内でテーブルを読みに行く
(今回はmtb_countryテーブル)
?テーブルが存在しないためシステムエラー

?を回避するため、
中身は空でも良いのでmtb_countryテーブルを作成するのが取り急ぎの対応になると考えます。

PhpPgAdminやPhpMyAdmin、もしくはSSHでpsqlなどSQLを発行できる環境はありますか?
そこでEC-CUBEのDBに対して先述のSQLを発行すればmtb_countryテーブルが作成されます。

oda
投稿日時: 2014/8/22 21:17
対応状況: −−−
半人前
登録日: 2012/2/17
居住地:
投稿: 16
Re: システムエラーが発生しました。
上記ソースは拡張クラス側なので具体的な処理は
data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php
の方になります。
その中のinit()でmtb_countryへのアクセスが発生していると思います。

いま上記ソースを見て思ったのはCopyrightが
* Copyright(c) 2000-2012 LOCKON CO.,LTD. All Rights Reserved.

となっているということは
EC-CUBE2.12.1もしくは2.12.2ぐらいのバージョンということですよね?
※EC-CUBE2.12.3からは2000-2013になっています。

であれば、そのバージョンにはmtb_countryというテーブルは存在しないので
バージョン違いソースが混在しているような状態ではないかと予想します。
その場合、既存のパッケージににどのような作業を行ったのかが分からないと解決は難しいと思います。

情報が限られていますので何とも言えませんが
可能性としてあり得るのは
・決済モジュールなどでdata/class/pages/admin/order/LC_Page_Admin_Order_Edit.phpが上書きされている
・FTPの接続先を間違っている
・2.12で運用していて今回2.13へバージョンアップをし、
 DBは今まで通りを参照している

とかでしょうか??

(1) 2 3 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1291
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.