質問 > 管理機能 > メンバー管理での商品管理 |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
paprika03 |
投稿日時: 2013/11/2 13:20
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
メンバー管理での商品管理 初めまして、見て頂きましてありがとうございます。
EC-CUBEバージョン 2.11.5 PHPバージョン PHP 5.2.6 DBバージョン MySQL 5.1.62 PHPのスキル 初心者・・・です。 上記の環境で運営しております。 EC-CUBEメンバー管理機能がありますがどのメンバーでログインしても 商品管理→商品マスタを使うとすべてのメンバーが登録した商品が出ると思います。 EC-CUBEメンバー管理機能を利用して 商品登録したメンバーごとに商品一覧を表示させるような事は 出来ますでしょうか・・・(他のメンバーの商品が出ないように) もし、出来るとしたらどのような方法がありますでしょうか ヒントを頂けると幸いです。 何卒、よろしくお願い申し上げます。 |
namahage |
投稿日時: 2013/11/2 16:50
対応状況: −−−
|
長老 登録日: 2013/2/28 居住地: 大阪 投稿: 198 |
Re: メンバー管理での商品管理 ども
可能ですが、PHPのカスタマイズをする必要がありますね。 似た対応をしているのが過去のスレッドにありますので、ご紹介させていただきますね。 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=12998&forum=10&post_id=59923#forumpost59923 簡単にいいますと、dtb_productsから商品情報を抽出している箇所で、creator_idの条件を追加してやる必要があります。 ログインしている人のIDの取得方法についても上記のスレッド内で記述されていますので、参考にカスタマイズすれば大丈夫だと思います。 |
paprika03 |
投稿日時: 2013/11/2 16:59
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
Re: メンバー管理での商品管理 ご丁寧にご返信ありがとうございます。
同型スレッドを探すことが出来ず申し訳ございませんでした 参考に作業をやってみて、新しい点等があったら続けて ご報告させて頂きます。 |
paprika03 |
投稿日時: 2013/11/5 14:56
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
Re: メンバー管理での商品管理 何度も申し訳ございません、紹介して頂いたスレッドを見ながら
まとめてみたのですが、下記のようなSQLという事なのでしょうか・・・ 引用(紹介スレッド先) function findProducts($where, $arrValues, $limit, $offset, $order, &$objProduct,) { $objQuery =& SC_Query_Ex::getSingletonInstance(); // 読み込む列とテーブルの指定 $col = 'product_id, name, authority, main_list_image, status, product_code_min, product_code_max, price02_min, price02_max, stock_min, stock_max, stock_unlimited_min, stock_unlimited_max, update_date'; $member_id = $_SESSION['member_id']; $objProduct = new SC_Product_Ex(); if ($val['dtb_member.authority'] == 0){ $from = $objProduct->alldtlSQL($where_products_class = '');} else{ $from = $objProduct->alldtlSQL2($where_products_class = '') ;} WHERE dtb_products.creator_id = $member_id return $objQuery->select($col, $from, $where, $arrValues); } ご教授頂けると幸いです。 |
namahage |
投稿日時: 2013/11/5 16:45
対応状況: −−−
|
長老 登録日: 2013/2/28 居住地: 大阪 投稿: 198 |
Re: メンバー管理での商品管理
は、
に修正。
は、
にしてください。 |
paprika03 |
投稿日時: 2013/11/5 17:07
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
Re: メンバー管理での商品管理 namahage様
丁寧な、説明ありがとうございます。 SC_Product.phpでのSQL切り替え部分についてなのですが、 スレッド先では下記のようになっておりましたが こちらの部分の記述についてもご教授頂けないでしょうか・・・ お忙しいところ申し訳ありません。 (引用)SC_Product.php761行目付近 LEFT JOIN dtb_maker ON dtb_products.maker_id = dtb_maker.maker_id ************ LEFT JOIN dtb_member ON dtb_products.creator_id = dtb_member.member_id If (dtb_member.authority == 1) {WHERE dtb_products.creator_id = dtb_member.member_id AND dtb_member.login_date > DATE_ADD(NOW(),INTERVAL 1 MIN);} else {WHERE dtb_products.creator_id = dtb_member.member_id;} ************ ) AS alldtl __EOS__; return $sql;} |
namahage |
投稿日時: 2013/11/5 18:13
対応状況: −−−
|
長老 登録日: 2013/2/28 居住地: 大阪 投稿: 198 |
Re: メンバー管理での商品管理
dtb_member.authority == 1ってのは、 ログインしているユーザの権限が店舗オーナーだった場合という制御になります。 僕がご案内させていただいたURLの内容が「店舗オーナーは自らが登録した商品だけしか検索できないようにしたい」という件名だったためにこういった制御があります。 今回はとくにこういった制御はないので、必要ありません。
としていただいて結構ですよ。 |
paprika03 |
投稿日時: 2013/11/5 19:56
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
Re: メンバー管理での商品管理 namahage 様
ありがとうございます、初心者の質問に答えて頂けて大変感謝しております。 早速SC_Product.php820行目付近へ記載してみたのですが 申し訳ございません上手く動かすことが出来ませんでした。 LEFT JOIN dtb_member ON dtb_products.creator_id = dtb_member.member_id WHERE dtb_products.creator_id = dtb_member.member_id; $where_clause ) as prdcls __EOS__; return $sql; } -----デバッグ情報----- Fatal error: Call to undefined method SC_Product_Ex::alldtlSQL2() in /data/class/pages/admin/products/LC_Page_Admin_Products.php on line 391 -----デバッグ情報ここまで----- LC_Page_Admin_Products.phpの記載を私が間違えたのでしょうか。 $member_id = $_SESSION['member_id']; $objProduct = new SC_Product_Ex(); if ($member_id == 0){ $from = $objProduct->alldtlSQL($where_products_class = '');} else{ $from = $objProduct->alldtlSQL2($where_products_class = ''); $where = "WHERE dtb_products.creator_id = ".$member_id; } return $objQuery->select($col, $from, $where, $arrValues); お忙しいところ申し訳ございません、ご教授頂けると幸いです。 |
namahage |
投稿日時: 2013/11/5 20:09
対応状況: −−−
|
長老 登録日: 2013/2/28 居住地: 大阪 投稿: 198 |
Re: メンバー管理での商品管理
alldtlSQL2って関数がありませんて書いてます。おそらくここは、alldtlSQLで良いと思います。
にしてください。 |
paprika03 |
投稿日時: 2013/11/5 22:52
対応状況: −−−
|
新米 登録日: 2013/11/2 居住地: 投稿: 8 |
Re: メンバー管理での商品管理 本当にお手数をおかけして申し訳ございませんありがとうございます。
LC_Page_Admin_Products.phpは下記のように変更し実行してみたところ、エラーが出てしまい、返信させて頂きました。 // 読み込む列とテーブルの指定 $col = "product_id, name, main_list_image, status, product_code_min, product_code_max, price02_min, price02_max, stock_min, stock_max, stock_unlimited_min, stock_unlimited_max, update_date"; $member_id = $_SESSION['member_id']; $objProduct = new SC_Product_Ex(); $from = $objProduct->alldtlSQL($where_products_class = ''); if ($member_id != 0){ $where = "WHERE dtb_products.creator_id = ".$member_id; } return $objQuery->select($col, $from, $where, $arrValues); } } =====デバック情報一部====== MDB2 Error: syntax error _doQuery: [Error message: Could not execute statement] [Last executed query: PREPARE mdb2_statement_mysql_XXXXテーブル名が続きます・・・ [Native code: 1064] [Native message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE dtb_products.creator_id = 6' at line 1] =====ここまで===== 情報が長く一部抜粋してみたのですが見当違いの場所を抜粋していましたらご指摘ください。 こんなに、お手数をおかけして申し訳ございません何卒よろしくお願い申し上げます。 |
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |