質問 > 管理機能 > dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
Mami |
投稿日時: 2011/9/12 1:29
対応状況: −−−
|
半人前 登録日: 2011/8/4 居住地: 投稿: 25 |
dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 カテゴリを一括削除→再登録しようとして、Mysqlを操作していたら、誤って
dtb_category_count と dtb_category_total_count を 空にしてしまいました。 その影響か、カテゴリを登録する段階で下記エラーが発生し サイトの表示に異常が発生するようになってしまいました。 --- Warning: require_once(/home/users/2/lolipop.jp-xxx/data//data/app_initial.php) [function.require-once]: failed to open stream: No such file or directory in /home/users/2/lolipop.jp-xxx/web/data/require_safe.php on line 38 Fatal error: require_once() [function.require]: Failed opening required '/home/users/2/lolipop.jp -xxx/web/data//data/app_initial.php' (include_path='/home/users/2/lolipop.jp-xxx/web/data/module') in /home/users/2/lolipop.jp-xxx/web/data/require_safe.php on line 38 --- もし復活することが可能であれば、方法を教えていただけないでしょうか? 恐れ入りますが、何卒よろしくお願いいたします。 ----------------------------------------------------------- [EC-CUBE] 2.11.1 [レンタルサーバ] ロリポップ [OS] Linux [PHP] PHP 5.2.17 [データベース] MySQL 5.1.34-log [WEBサーバ] Apache ----------------------------------------------------------- |
yukikaze |
投稿日時: 2011/9/12 17:30
対応状況: −−−
|
長老 登録日: 2011/7/26 居住地: 投稿: 196 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 同じく新米ですが…
復活とは意味が違うかもしれませんが? data/class/helper/SC_Helper_DB.php の sfCountCategory(Function) で、一時的に第2引数(is_force_all_count)を true にして、商品管理で商品登録なりカテゴリ登録なりすれば、再作成してくれると思うんですが… どうでしょう? |
AMUAMU |
投稿日時: 2011/9/13 11:21
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 >dtb_category_count と
>dtb_category_total_count を > >空にしてしまいました。 データ空になったとしても商品一覧の表示がされない等の問題は生じますが、エラーが生じるような事態にはならないはずです。 (テーブル自体が無くなった場合はエラーが生じます) ちなみに上記2テーブルの内容生成は、以下の2つの何れかのタイミングで行われます。空であれば全体再生成が自動で試みられるはずです。 a.商品の登録/編集完了時。 b.商品購入完了時。 >その影響か、カテゴリを登録する段階で下記エラーが発生し >サイトの表示に異常が発生するようになってしまいました。 当該エラーについては何か別の問題が生じている可能性を疑った方が良いと思います。
|
Mami |
投稿日時: 2011/9/21 1:19
対応状況: 解決済
|
半人前 登録日: 2011/8/4 居住地: 投稿: 25 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 ありがとうございました。
ご指摘の通り、別の箇所でエラーが起こっていたようでした。 ご教授いただきまして、誠にありがとうございました。 |
SaintsRz |
投稿日時: 2011/11/5 20:34
対応状況: −−−
|
新米 登録日: 2011/7/15 居住地: 投稿: 10 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 初めまして、私も同じ現象を起こしてしまったので質問させてください。
私の場合はdtb_category_countとdtb_category_total_countを空にしてしまい商品詳細ページに表示されているカテゴリのリンクをクリックするとエラーになります。 皆さんの回答を参考にカテゴリを再度登録や商品を登録しても2つのテーブルには何も入りません。(登録事態はできます。) むしろ商品の登録、更新で保存を押すとエラーになります。 はじめはページにカテゴリも出なかったのですがphpmyadminで直接2つのテーブルに登録したカテゴリIDと商品数(テストで1件登録)を登録したところ表示はできたのですが、一覧を表示しようするとエラーになります。 この説明で何かわかりますでしょうか。 そもそも空にしてしまったためそれまでどのようなデータが入っていたか不明なのですがどちらも基本的にdtb_categoryテーブルのcategory_idとその配下についている商品数(1件なら1)を1レコード登録すればいいのですよね? 商品情報は見れているためdtb_products、dtb_products_class 、dtb_product_categoriesはちゃんと登録されていると思われます。 下記は商品一覧ページを開こうとしたときのエラーログとスペックとなります。 SQL: SELECT count(*) FROM ( SELECT alldtl.product_id FROM dtb_products AS alldtl JOIN dtb_product_categories AS T2 ON alldtl.product_id = T2.product_id JOIN dtb_category ON T2.category_id = dtb_category.category_id WHERE alldtl.del_flg = 0 AND alldtl.status = 1 AND (stock >= 1 OR stock_unlimited = 1) AND T2.category_id IN (?) GROUP BY alldtl.product_id ) as t MDB2 Error: no such field _doQuery: [Error message: Could not execute statement] [Last executed query: PREPARE mdb2_statement_mysql_129e2ebb858ea01c4563641dc5350b2a7e30e189a0 FROM 'SELECT count(*) FROM ( SELECT alldtl.product_id FROM dtb_products AS alldtl JOIN dtb_product_categories AS T2 ON alldtl.product_id = T2.product_id JOIN dtb_category ON T2.category_id = dtb_category.category_id WHERE alldtl.del_flg = 0 AND alldtl.status = 1 AND (stock >= 1 OR stock_unlimited = 1) AND T2.category_id IN (?) GROUP BY alldtl.product_id ) as t'] [Native code: 1054] [Native message: Unknown column 'stock' in 'where clause'] EC-CUBEバージョン 2.11.0 PHPバージョン PHP 5.2.17 DBバージョン MySQL 5.0.90-community レンタルサーバ ラピッドサイト よろしくお願いいたします。 |
seasoft |
投稿日時: 2011/11/5 23:03
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 分析しましたところ、dtb_category_count や dtb_category_total_count とは無関係なバグのようです。
(2.11.5 デベロッパー版で確認。) チケットを登録しました。 http://svn.ec-cube.net/open_trac/ticket/1536
|
SaintsRz |
投稿日時: 2011/11/6 0:25
対応状況: −−−
|
新米 登録日: 2011/7/15 居住地: 投稿: 10 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 seasoft様
回答ありがとうございました。 今日の午前中には問題なく動いており、データを一度クリアしたくdtb_category_countとdtb_category_total_countの中も消してしまった結果今回のようなことになってしまったのですが、テーブルのデータでどうにか直すことはできないでしょうか。 具体的な対処方法はコメントいただいたように有償となってしまうのでしょうか。 |
seasoft |
投稿日時: 2011/11/6 1:46
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 前述のとおり、それは無関係だと推測しています。
パラメータ「NOSTOCK_HIDDEN」を false に設定すれば、動作しそうな気がします。 > 具体的な対処方法はコメントいただいたように有償となってしまうのでしょうか。 パラメータ「NOSTOCK_HIDDEN」を true で運用したいということでしたら、まずは EC-CUBE の開発プロジェクトとしてのバグ修正をお待ちいただき、それを参考に修正して頂く方法が考えられます。 もしも、お急ぎのようでしたら、私どもで対応させていただく場合は有償にて対応可能でございます。
|
SaintsRz |
投稿日時: 2011/11/6 13:32
対応状況: −−−
|
新米 登録日: 2011/7/15 居住地: 投稿: 10 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 > パラメータ「NOSTOCK_HIDDEN」を false に設定すれば、動作しそうな気がします。
上記の設定をしたら問題なく表示されました。 問題は発生する前に自分でtrueにしていました。 ということは問題としてはtrueの状態では商品一覧でエラーとなるというバグだったとりうことでしょうか。 在庫なしの非表示はそれ程こだわっているわけではないのでまずはこの状態で進めてみます。 ご親切にありがとうございました。 |
seasoft |
投稿日時: 2011/11/6 13:37
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: dtb_category_countとdtb_category_total_countを空にしてしまった場合の復活方法 > ということは問題としてはtrueの状態では商品一覧でエラーとなるというバグだったとりうことでしょうか。
はい。実際には前述のチケットを解消してからでないと断定できませんが、ほぼそういう事になると思います。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |