質問 > フロント機能 > お買い物の完了ができません |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
konbu |
投稿日時: 2009/10/10 11:51
対応状況: −−−
|
新米 登録日: 2009/10/10 居住地: 投稿: 4 |
お買い物の完了ができません EC CUBE初心者です。
現在製作中のショッピングサイトでデータベースの乗り換えを行いました。(MySQLからPostGreSQLへ) 同サーバ内に別環境を立ち上げてテストを行っているのですが、お買い物の完了の際にシステムエラーが起きてしまいます。 データベースの乗り換えは、テーブルごとにエクスポート・インポートを繰り返し、シーケンスの設定を行いました。 ------------------------------------------------------------------------------------------ [EC-CUBE] 2.4.1正式版(2.4.0正式版>2.4.1正式版へアップデート) [レンタルサーバ] CPIサーバ [OS] Windows XP Professional [PHP] PHP 5.2.4 [データベース] MySQL 4.0.24 PostgreSQL 8.1.4 [WEBサーバ] apache2.0.59 [ブラウザ] Firefox3.5 [現象] お買い物完了の際にシステムエラーが起こる。 ------------------------------------------------------------------------------------------ ログを確認してみたところ、 SELECT * FROM dtb_order_temp WHERE order_temp_id = ? DB Error: unknown error SELECT * FROM dtb_order_temp WHERE order_temp_id = '4acff0d7928d7x66WfKqK' [nativecode=ERROR: current transaction is aborted, commands ignored until end of transaction block] がでていたのですが、これの対処方法が思いつきません。 なのでご教授いただけたら幸いです。 宜しくお願いします。 追記 新規会員登録も同じように完了時にシステムエラーが起きてしまいました。 シーケンスを確認してみてもちゃんと値の再設定してあるのですが・・・。 |
seasoft |
投稿日時: 2009/10/10 12:48
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: お買い物の完了ができません 1リクエストで発生しているエラーは上記記載のものだけですか?
重要な情報が削られているような予感が。
|
konbu |
投稿日時: 2009/10/10 13:00
対応状況: −−−
|
新米 登録日: 2009/10/10 居住地: 投稿: 4 |
Re: お買い物の完了ができません 返信ありがとうございます。
買い物完了できない際に表記されるのはエラーはこのような感じです。 SELECT * FROM dtb_order_temp WHERE order_temp_id = ? DB Error: unknown error SELECT * FROM dtb_order_temp WHERE order_temp_id = '4ad0076886dd7aBP9UG37' [nativecode=ERROR: current transaction is aborted, commands ignored until end of transaction block] html/shopping/complete.php 34:LC_Page_Shopping_Complete_Ex->process data/class_extends/page_extends/shopping/LC_Page_Shopping_Complete_Ex.php 79:LC_Page_Shopping_Complete->lfDoComplete data/class/pages/shopping/LC_Page_Shopping_Complete.php 293:SC_Helper_DB->sfGetOrderTemp data/class/helper/SC_Helper_DB.php 1113:SC_Query->select data/class/SC_Query.php 95:SC_DbConn->getAll data/class/SC_DbConn.php 164:DB_common->getAll data/module/DB/common.php 1610:DB_common->execute data/module/DB/common.php 959:DB_pgsql->simpleQuery data/module/DB/pgsql.php 338:DB_pgsql->pgsqlRaiseError data/module/DB/pgsql.php 786:DB_common->raiseError data/module/DB/common.php 1853:PEAR->raiseError data/module/PEAR.php 557:DB_Error->DB_Error data/module/DB.php 893:PEAR_Error->PEAR_Error SELECT relname FROM pg_class WHERE (relkind = 'r' OR relkind = 'v') AND relname = ? GROUP BY relname DB Error: unknown error SELECT relname FROM pg_class WHERE (relkind = 'r' OR relkind = 'v') AND relname = 'dtb_session' GROUP BY relname [nativecode=ERROR: current transaction is aborted, commands ignored until end of transaction block] :SC_Helper_Session->sfSessWrite data/class/helper/SC_Helper_Session.php 86:SC_Helper_DB->sfTabaleExists data/class/helper/SC_Helper_DB.php 77:SC_Query->getall data/class/SC_Query.php 156:SC_DbConn->getAll data/class/SC_DbConn.php 164:DB_common->getAll data/module/DB/common.php 1610:DB_common->execute data/module/DB/common.php 959:DB_pgsql->simpleQuery data/module/DB/pgsql.php 338:DB_pgsql->pgsqlRaiseError data/module/DB/pgsql.php 786:DB_common->raiseError data/module/DB/common.php 1853:PEAR->raiseError data/module/PEAR.php 557:DB_Error->DB_Error data/module/DB.php 893:PEAR_Error->PEAR_Error ログを今確認してみたら大量の文字化けが・・・。 もしかしたらDB移行の際の文字コードに問題があるのでしょうか。 MySQL,PostGreSQLどちらも文字化けはしていないし、サイト画面も文字化けはしてないのですが。。 |
seasoft |
投稿日時: 2009/10/10 16:08
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: お買い物の完了ができません MySQL の文字化けは頻繁に聞きますが、PostgreSQL での文字化けはあまり記憶にありません。
「UTF8」で、DB 作成しました? エラー的には、まだ連鎖で何か発生していそうなのですが、画面出力・ログ出力とも他には無いですか?
|
konbu |
投稿日時: 2009/10/10 16:28
対応状況: −−−
|
新米 登録日: 2009/10/10 居住地: 投稿: 4 |
Re: お買い物の完了ができません 引用:
CPIサーバ契約時にすでに作成されていたもので、CPIサーバのデータベースはEUC-JPなのできっとEUC-JPだと思います。 引用:
他にはこれといって無いのですが、テストしていてEC-CUBEのバックアップ機能もシステムエラーで動作しませんでした。 |
konbu |
投稿日時: 2009/10/10 22:20
対応状況: 解決済
|
新米 登録日: 2009/10/10 居住地: 投稿: 4 |
Re: お買い物の完了ができません 投稿者のkonbuです。問題自己解決しました^^; data/class/SC_DbConn.phpにPostgreSQL用として $this->conn = $objDbConn; のすぐ下に、 if ($this->conn instanceof DB_pgsql) { $this->conn->query("SET NAMES 'utf8'"); } を入れていたのですが、なぜか $this->conn->query("SET NAMES 'utf8'"); をif文のclose後にさらにもう1行記述しておりました。。。 自分の凡ミスでスレ立てて申し訳ありませんでした。 そして応えてくださったseasoft様ありがとうございました。 対応状況の方を解決済に変更します。 |
seasoft |
投稿日時: 2009/10/10 22:50
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: お買い物の完了ができません > data/class/SC_DbConn.phpにPostgreSQL用として
MySQL では定番ですが、PostgreSQL でも必要なケースあるのですね。 クライアントエンコーディングを変更する目的ですかね。 > if ($this->conn instanceof DB_pgsql) { PHP も instanceof を使えたのですね。勉強になりました。 しかし、裏でエラーが発生していても、表面上分からない状況になってしまうのは嫌ですね・・・。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |