バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 顧客データベースに店舗IDを追加したい。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
k_shimizu
投稿日時: 2014/8/21 11:35
対応状況: 開発中
新米
登録日: 2014/8/21
居住地:
投稿: 4
顧客データベースに店舗IDを追加したい。
------------------------------------------------------------------------------------------
[EC-CUBE] EC-CUBEのバージョン 2.13.2
[レンタルサーバ] さくらVPS
[OS] CentOS 6
[PHP] 5.4
[データベース] MYSQL5.5
[WEBサーバ] apache
[ブラウザ] firefox
[導入プラグインの有無] 無し
[カスタマイズの有無]
店舗が複数あり、店舗IDを割り振り顧客データーベースに登録し、管理したい。
その為、index.phpとは別にindexmain.phpを作り、そこで店舗IDをセッション変数に格納。
購入時にセッション変数を読み込み顧客データーベースに店舗IDを登録する。

[現象]
EC-CUBEログインなしでは顧客データベースに店舗IDが登録されます。
EC-CUBEログインありでは顧客データベースに店舗IDが登録されません。
------------------------------------------------------------------------------------------

店舗が複数あり、購入した店舗が分かるようにカスタマイズしたいと思っている者です。
店舗IDを顧客データベースに登録したいのですが、うまくいきません。
良いお知恵をお貸しいただければと思います。宜しくお願いします。
ログインなし時ではデータベースに店舗IDが書き込まれるため、
ログインあり時のデータベース読み込みを何とかしなければならないと思いますが、どこでどう読み込まれているのか
よくわかりませんでした。

以下カスタマイズの内容です。

//indexmain.php 抜粋
// セッションIDを新規に発行する
$objSess = new SC_Session_Ex();
$objSess->SetSession('plg_UID_var', $_POST["tenpoid"]);
header("Location: index.php");
exit;


//data/class/page/shopping/LC_Page_Shopping.php 抜粋
public function action()
{
$objSess = new SC_Session_Ex();
$plg_myUID_var = $objSess->GetSession('plg_UID_var');
$this->UID = $plg_myUID_var;

//data/Smarty/templates/default/frontparts/form_personal_input.tpl 抜粋
<th>購入店ID</th>

<td>

<!--{assign var=key1 value="`$prefix`uid"}-->

<input type="text" name="<!--{$key1}-->" value="<!--{ $UID }-->" class="box120" readonly>

</td>

//データベース

dtb_order_temp に order_uid を追加
dtb_order に order_uid を追加
dtb_customer に uid を追加

ログインなし時では上記3つのデータベースに店舗IDが書き込まれます。
ログインあり時では上記3つのデータベースに店舗IDが書き込まれません。
yuh
投稿日時: 2014/8/21 15:41
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1818
Re: 顧客データベースに店舗IDを追加したい。
ログイン時には/shopping/index.phpはリダイレクトされるので処理が行われないからと思います。
LC_Page_Shopping_Deliv.phpのregisterDelivとかにも追加でできると思います。
k_shimizu
投稿日時: 2014/8/23 14:54
対応状況: −−−
新米
登録日: 2014/8/21
居住地:
投稿: 4
Re: 顧客データベースに店舗IDを追加したい。
お返事ありがとうございます。LC_Page_Shopping_Deliv.phpのregisterDelivを確認致しまして、
SC_Helper_Purchase.phpに以下のようにuidを追記しましたら、表示およびデータベースに書き込みされました。

/**
* 会員情報を受注情報にコピーする.
*
public function copyFromCustomer(&$dest, &$objCustomer, $prefix = 'order',
$keys = array('name01', 'name02', 'kana01', 'kana02', 'company_name',
'sex', 'zip01', 'zip02', 'country_id', 'zipcode', 'pref', 'addr01', 'addr02',
'tel01', 'tel02', 'tel03', 'fax01', 'fax02', 'fax03',
'job', 'birth', 'email','uid',
)

ありがとうございました。
しかし、今度は会員ログイン状態でMYページにて会員登録内容変更を行うと、エラーが出るようになってしまいました。
データベースの重複エラーのようですが、どこを確認してみたら良いでしょうか?
こちらもご教授願えたらと思います。宜しくお願い致します。


Fatal error(E_USER_ERROR): DB処理でエラーが発生しました。
SQL: [PREPARE mdb2_statement_mysql_1580100ea1a89eb219fe4913f1ed71cee8f627e1ce FROM 'INSERT INTO dtb_customer(name01,name02,company_name,kana01,kana02,zip01,zip02,country_id,pref,addr01,addr02,tel01,tel02,tel03,fax01,fax02,fax03,uid,reminder,sex,job,mailmaga_flg,email,email_mobile,birth,update_date,salt,customer_id,create_date) SELECT ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,CURRENT_TIMESTAMP,?,?,CURRENT_TIMESTAMP']
PlaceHolder: [array (
0 => '山本',
1 => '太郎',
2 => '',
3 => 'ヤマモト',
4 => 'タロウ',
5 => '616',
6 => '1111',
7 => 392,
8 => '26',
9 => '京都市右京区',
10 => '太秦一丁目',
11 => '075',
12 => '1111',
13 => '2222',
14 => '',
15 => '',
16 => '',
17 => '大阪店',
18 => '1',
19 => '1',
20 => '',
21 => '1',
22 => 'test@testmail.com';,
23 => '',
24 => '',
25 => 'daipiaseaj',
26 => '22',
)]
MDB2 Error: constraint violation
_doQuery: [Error message: Could not execute statement]
[Last executed query: EXECUTE mdb2_statement_mysql_1580100ea1a89eb219fe4913f1ed71cee8f627e1ce USING @0, @1, @2, @3, @4, @5, @6, @7, @8, @9, @10, @11, @12, @13, @14, @15, @16, @17, @18, @19, @20, @21, @22, @23, @24, @25, @26]
[Native code: 1062]
[Native message: Duplicate entry '' for key 'secret_key']
on [/home/k-admi/public_html/shop/data/class/SC_Query.php(1088)]
/home/k-admi/public_html/shop/html/mypage/change.php(29): LC_Page_Mypage_Change_Ex->process
/home/k-admi/public_html/shop/data/class_extends/page_extends/mypage/LC_Page_Mypage_Change_Ex.php(54): LC_Page_Mypage_Change->process
/home/k-admi/public_html/shop/data/class/pages/mypage/LC_Page_Mypage_Change.php(72): LC_Page_AbstractMypage_Ex->process
/home/k-admi/public_html/shop/data/class_extends/page_extends/mypage/LC_Page_AbstractMypage_Ex.php(54): LC_Page_AbstractMypage->process
/home/k-admi/public_html/shop/data/class/pages/mypage/LC_Page_AbstractMypage.php(89): LC_Page_Mypage_Change->action
/home/k-admi/public_html/shop/data/class/pages/mypage/LC_Page_Mypage_Change.php(137): LC_Page_Mypage_Change->lfRegistCustomerData
/home/k-admi/public_html/shop/data/class/pages/mypage/LC_Page_Mypage_Change.php(171): SC_Helper_Customer->sfEditCustomerData
/home/k-admi/public_html/shop/data/class/helper/SC_Helper_Customer.php(117): SC_Query->insert
/home/k-admi/public_html/shop/data/class/SC_Query.php(567): SC_Query->query
/home/k-admi/public_html/shop/data/class/SC_Query.php(865): SC_Query->execute
/home/k-admi/public_html/shop/data/class/SC_Query.php(1049): SC_Query->error
/home/k-admi/public_html/shop/data/class/SC_Query.php(1088): trigger_error

yuh
投稿日時: 2014/8/23 16:28
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1818
Re: 顧客データベースに店舗IDを追加したい。
原因はわかりませんが、その時点でcustomer_idが空になっているので、その影響でUPDATEではなくINSERTが走ってる不具合です。

そのユーザーはちゃんとcustomer_idが入ってますか?
あと、LC_Page_Mypage_Change.phpの$customer_id = $objCustomer->getValue('customer_id');の後で$customer_idを出力させて値がはいってるか確認してください
k_shimizu
投稿日時: 2014/8/25 10:47
対応状況: −−−
新米
登録日: 2014/8/21
居住地:
投稿: 4
Re: 顧客データベースに店舗IDを追加したい。
お返事ありがとうございます。
カスタマイズの仕方を間違っていたようで、
/**
* Page のプロセス
* @return void
*/
public function action()
{
$objCustomer = new SC_Customer_Ex();
$customer_id = $objCustomer->getValue('customer_id');

を消してしまっていました。
全ての動作が完璧に思う通りになりました。
ありがとうございました。
k_shimizu
投稿日時: 2014/8/25 10:54
対応状況: 解決済
新米
登録日: 2014/8/21
居住地:
投稿: 4
Re: 顧客データベースに店舗IDを追加したい。
この投稿は解決済みとさせていただきます。
親切にありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,286名です
総投稿数は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.