質問 > 管理機能 > 会員登録で状況により入力項目を必須・任意と切り替えたい |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
yuugo |
投稿日時: 2016/1/18 14:11
対応状況: −−−
|
新米 登録日: 2016/1/18 居住地: 投稿: 2 |
会員登録で状況により入力項目を必須・任意と切り替えたい 仕事でECCUBEのカスタマイズ業務を引き継ぎ、初めてソースとにらめっこしています。
会員管理>会員登録でハガキや電話でご注文をいただいた方を登録できるように、 会員状態(ラジオボタン)に[仮会員][本会員]に加えて[非会員]を追加しました。 その際、非会員の場合のみメールアドレスを任意にする必要があるのですが、 どのようにすれば良いのでしょうか。 data/class/pages/admin/customer/LC_Page_Admin_Customer_Edit.phpで必須項目のエラーチェックをする際、 data/class/helper/SC_Helper_Customer.phpの $objFormParam->addParam('メールアドレス', $prefix . 'email', null, 'a', array('NO_SPTAB', 'EXIST_CHECK', 'EMAIL_CHECK', 'SPTAB_CHECK', 'EMAIL_CHAR_CHECK')); という部分をコメントアウトするとエラーチェック(EXIST_CHECK)をスルーするようなので、 if ($objFormParam->getValue('status') != 3) { //非会員:3 $objFormParam->addParam('メールアドレス', $prefix . 'email', null, 'a', array('NO_SPTAB', 'EXIST_CHECK', 'EMAIL_CHECK', 'SPTAB_CHECK', 'EMAIL_CHAR_CHECK')); } などと条件を加えてみたのですが、$objFormParam->getValue('status')の中身が空のようです。。 プログラミングに慣れておらず、見当違いのコトをしているのではと思い質問させていただきました。 【やりたいこと】会員管理>会員登録で状況により入力項目を必須・任意と切り替える ・会員状態を仮会員・本会員にチェックを入れて登録する際はメールアドレスは必須項目とする ・非会員にチェックを入れて登録する際はメールアドレスは任意項目とする ------------------------------------------------------------------------------------------ [EC-CUBE] 2.13.3 [レンタルサーバ] エックスサーバ [PHP] PHP 5.3.3 [データベース] MySQL 5.5.45 [WEBサーバ] apache ------------------------------------------------------------------------------------------ |
tsuji |
投稿日時: 2016/1/18 15:24
対応状況: −−−
|
仙人 登録日: 2013/11/19 居住地: 投稿: 958 |
Re: 会員登録で状況により入力項目を必須・任意と切り替えたい yuugo 様
メールアドレスはEC-CUBEのログイン処理などいろいろな部分で 使われています。この部分のチェック処理を外すと思わぬ ところで不具合が発生するかもしれませんので、十分注意 してください。 > $objFormParam->addParam('メールアドレス', $prefix . 'email', null, 'a', array('NO_SPTAB', 'EXIST_CHECK', 'EMAIL_CHECK', 'SPTAB_CHECK', 'EMAIL_CHAR_CHECK')); ↑を全てコメントアウトするとメールアドレスの項目のデータの取得も できなくなりますので、必須チェックを外す場合は'EXIST_CHECK'のみ 外すことになります。 if文で必要な場合は、'EXIST_CHECK'つけて必要でない場合は外す というところでしょうか。 また、SC_Helper_CustomerでaddParamしている段階ではPOST値は 取得できていないので、その時点で値を取り出して操作することは できません。 この部分でチェックを行おうとすると、この処理の前に非会員の判定 を行って、その値を関数に引数で持たせて、関数内で処理を行う ということになります。 しかし、メールアドレスをaddParamしている部分までにはいくつか 関数を経由することになるので、それぞれの関数で影響がないよう に引数を追加する必要があります。 対応が難しい場合は、ダミーでメールアドレスを入力して 運用で回避するという方法もあります。
|
yuugo |
投稿日時: 2016/1/20 15:12
対応状況: −−−
|
新米 登録日: 2016/1/18 居住地: 投稿: 2 |
Re: 会員登録で状況により入力項目を必須・任意と切り替えたい ご返答ありがとうございます。
また、返信遅くなり申し訳ありません。 'EXIST_CHECK'のみ外すことが可能なのですね! 自分なりに勉強しなおし中ですが、プログラミングだんだんと思いだしてきました。 やはりどこかのタイミングでif文で振り分けて、非会員専用ルーチンを用意するなどして対応してみようと思います。 自分のやり方が、あながち間違った考え方ではなかったことに少し安心しました。 どうもありがとうございました。 |
iamcube |
投稿日時: 2016/2/22 17:41
対応状況: −−−
|
一人前 登録日: 2014/2/14 居住地: 投稿: 96 |
Re: 会員登録で状況により入力項目を必須・任意と切り替えたい yuugo 様
実は、現在同じ内容で情報を探していたところ、yuugo様の投稿記事を見つけたのですが、その後メールアドレスなしでの登録は出来ましたでしょうか。 もともとの質問されていた内容も、よく理解できない状態なのですが、その後、可能になったようであれば詳細を教えて頂きたく、ご連絡させて頂きました。 宜しくお願い致します。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |