バグ報告 > 管理機能 > ADMIN_MODE =1で顧客情報を一括削除するとエラー&商品情報が削除される |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
illfrog300 |
投稿日時: 2009/10/11 21:49
対応状況: −−−
|
一人前 登録日: 2009/5/4 居住地: 投稿: 106 |
ADMIN_MODE =1で顧客情報を一括削除するとエラー&商品情報が削除される ADMIN_MODE =1に設定し、顧客管理>顧客マスタから全検索をかけ
一括削除しようとしたところ、何も削除されず、かわりに 当方の環境では、登録商品がすべて削除される不具合を発見しました。当方の環境のみの症状なのかがわからず書き込みさせて頂きましたが皆様の環境では正常に処理されますでしょうか? EC-CUBE 2.4.0 DBサーバ PostgreSQL 7.4.19 PHP 5.2.9 |
ramrun |
投稿日時: 2009/10/12 0:28
対応状況: −−−
|
仙人 登録日: 2006/11/3 居住地: 投稿: 789 |
Re: ADMIN_MODE =1で顧客情報を一括削除するとエラー&商品情報が削除される 詳細まではみていませんが、こちらの環境でも同じ結果になりました。
テストで入れてたので顧客は無しの状態で、検索して「検索結果をすべて削除」をクリックでdtb_productsのdel_flgが立つようです。 エラー?は特に無かったような... 一応update文で戻せるところまで確認しました。 2.4.0-comu-r18187 PHP 5.2.9 MySQL 5.0.77-log |
illfrog300 |
投稿日時: 2009/10/12 2:51
対応状況: −−−
|
一人前 登録日: 2009/5/4 居住地: 投稿: 106 |
Re: ADMIN_MODE =1で顧客情報を一括削除するとエラー&商品情報が削除される ご確認感謝致します。
書き方が誤認しやすい文章でした。。 当方の環境でもエラー表示自体は発生していません。 症状としては 顧客マスタで検索>削除>何も起こらず ↓ 商品情報にdtb_productsのdel_flgが立つ という同様の状態を確認しております。 自分の技術では修正できない範疇なのでご報告どまりで 申し訳ございません; |
ramrun |
投稿日時: 2009/10/12 11:02
対応状況: −−−
|
仙人 登録日: 2006/11/3 居住地: 投稿: 789 |
Re: ADMIN_MODE =1で顧客情報を一括削除するとエラー&商品情報が削除される 個人的にそろそろ、こちらに顔を出すのを止めようかと思っているので、追いかけ方を書いておこうと思います。
illfrog300さんの参考になれば幸いです。 まず、顧客管理で検索して「検索結果をすべて削除」をクリックするとどうなるのかを追いかけます。 「検索結果をすべて削除」が表示されているときのURLが http://yourdomain/eccube/html/admin/customer/index.php だとして、ブラウザからHTMLのソースをみるとボタンの部分が
となっているのが確認できます。 JavaScriptのfnModeSubmit()が呼ばれているのですが、これは同じHTMLソースの上の方で読み込まれているsite.jsにあります。
いくつかあるJavaScriptファイルの中身は、どんな関数があるのか確認する必要がありますね(汗)。 で、 /eccube/html/user_data/packages/default/js/site.js を覗いてみると、 ※一部省略してます
form1のmodeを上書きしている部分があります。 具体的にはmodeをdelete_allしており、その後submit()すると。 form1はHTMLソースの↓の部分で、
mode searchをmode delete_allにして /eccube/html/admin/customer/index.php に送信(submit)しています。 送信先の /eccube/html/admin/customer/index.php は、LC_Page_Admin_Customer_Ex.phpを呼んで実行するところです。
呼ばれた /eccube/data/class_extends/page_extends/admin/customer/LC_Page_Admin_Customer_Ex.php は拡張しやすいように用意されたファイルなので、何もいじっていなければそのままLC_Page_Admin_Customerを呼んでいます。
で、更に呼ばれた /eccube/data/class/pages/admin/customer/LC_Page_Admin_Customer.php が本命なのですが、慣れてくれば直接こちらのファイルを参照できる(見当がつく)ようになると思います。 その中でmode delete_allを検索すると↓の部分がでてきます。
dtb_productsをupdateしている部分が1つ目。 顧客を全削除しようとしているのにdel_customer_idを必要としている部分が2つ目ですね。 このあたりを直せれば... ということで、 自分で直せるようになりたいという人の足しになればと思います。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |