バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 独自テーブルへのDBアクセス処理

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
smat
投稿日時: 2014/11/12 15:58
対応状況: −−−
新米
登録日: 2014/11/8
居住地:
投稿: 9
独自テーブルへのDBアクセス処理
1.オーダメイドアクセサリショップをEC-CUBEベースで構築中です。

2.顧客登録と同じ仕組みでアクセサリ製作職人さんの「職人登録」を作成したいです。

3.顧客登録画面をベースに管理画面から
職人登録画面を作成しました。
構造は顧客登録画面と同じです。

職人登録画面から登録実行すると、結果が
顧客テーブルに反映されてしまいます。

新規作成した職人テーブル(構造は顧客テーブルと同じ)
に登録するには、なにが必要でしょうか?
顧客登録のインサートはどこで行われているでしょうか?
是非ともアドバイスをお願いします。
ゲスト
投稿日時: 2014/11/12 17:52
対応状況: −−−
Re: 独自テーブルへのDBアクセス処理
smat 様

LC_Page_Admin_Customer_Edit.php内にある、
function lfRegistData 内で登録処理されています。

実際にDBへINSERTする処理はSC_Helper_Customer.php 内の
function sfEditCustomerData でdtb_customerにINSERTしています。

新しく用意した職人テーブルに登録するための関数を用意して、
そこで処理すればうまくいくのではないでしょうか。


smat
投稿日時: 2014/11/12 18:10
対応状況: −−−
新米
登録日: 2014/11/8
居住地:
投稿: 9
Re: 独自テーブルへのDBアクセス処理
ko-shi様
丁寧なご回答ありがとうございます。
こちらで確認します。
smat
投稿日時: 2014/11/13 14:10
対応状況: −−−
新米
登録日: 2014/11/8
居住地:
投稿: 9
Re: 独自テーブルへのDBアクセス処理
クラスの内容を確認し、LC_Page_Admin_Customer_Edit.php、SC_Helper_Customer.phpで登録されていることを確認しました。
そこで
入力画面のindex.phpをコピーしworker.phpを以下のように作成
117行目  $this->arrErr = SC_Helper_Customer2_Ex::sfCustomerEntryErrorCheck($objFormParam);
131行目 SC_Response_Ex::sendRedirect('complete.php', array('ci' => SC_Helper_Customer2_Ex::sfGetCustomerId($uniqid)));

SC_Helper_Customer.phpをコピーしSC_Helper_Customer2.phpを作成し修正
32行目 class SC_Helper_Customer2
111行目 $customer_id = $objQuery->nextVal('dtb_worker_customer_id');
117行目 $objQuery->insert('dtb_hisyo', $arrData);

SC_Helper_Customer_Ex.phpをコピーしSC_Helper_Customer2_Ex.phpを作成し修正
24行目 require_once CLASS_REALDIR . 'helper/SC_Helper_Customer2.php';
35行目 class SC_Helper_Customer2_Ex extends SC_Helper_Customer2

上記のように修正したのですが、登録処理は正常終了しますが
登録内容はまだ顧客テーブルに反映されてしまいます。
どこに問題があるのでしょうか。
是非ともアドバイスをお願いします。
ゲスト
投稿日時: 2014/11/13 15:15
対応状況: −−−
Re: 独自テーブルへのDBアクセス処理
smat様

職人登録画面の処理はLC_Page_Admin_Customer_Edit.phpをコピーして作成していますでしょうか?

そうであれば、lfRegistData関数内のreturn部分

return SC_Helper_Customer_Ex::sfEditCustomerData($arrData, $arrData['customer_id']);

を確認してください。
smat
投稿日時: 2014/11/13 17:20
対応状況: 確認中
新米
登録日: 2014/11/8
居住地:
投稿: 9
Re: 独自テーブルへのDBアクセス処理
ko-shi様
丁寧なご回答再びありがとうございます。
こちらで確認します。
smat
投稿日時: 2014/11/13 22:15
対応状況: 確認中
新米
登録日: 2014/11/8
居住地:
投稿: 9
Re: 独自テーブルへのDBアクセス処理
アドバイスをもとに、LC_Page_Admin_Customer_Edit.phpをLC_Page_Admin_Customer2_Edit.phpにコピーして
295行目 $arrOldCustomerData = SC_Helper_Customer2_Ex::sfGetCustomerData($arrData['customer_id']);
301行目 return SC_Helper_Customer2_Ex::sfEditCustomerData($arrData, $arrData['customer_id']);
と修正したのですが、登録処理は正常終了しますが
登録内容はまだ顧客テーブルに反映されてしまいます。
どこに問題があるのでしょうか。

それと、顧客登録フォームから顧客テーブルへの登録と
職人登録フォームから職人テーブルへの登録を両立させるには
LC_Page_Admin_Customer_Edit.phpなどでどのような条件分岐が必要でしょうか。
是非ともアドバイスをお願いします。
ゲスト
投稿日時: 2014/11/14 19:18
対応状況: −−−
Re: 独自テーブルへのDBアクセス処理
smat 様

職人登録フォームから登録処理する際のFormの送信先は、
職人登録フォーム処理用のphpファイルを向いているでしょうか?
smat
投稿日時: 2014/11/15 15:11
対応状況: −−−
新米
登録日: 2014/11/8
居住地:
投稿: 9
Re: 独自テーブルへのDBアクセス処理
ご回答ありがとうございます。
指摘の通り、phpの送信先に問題がありました。
目途がついたので修正します。
有難うございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.