質問 > フロント機能 > ログインをメールアドレスから変更したい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kaworu |
投稿日時: 2008/9/23 14:48
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
ログインをメールアドレスから変更したい 以前にも似たような質問があったようなのですが、判らなかったのでどうか教えて下さい。
ラピッドサイトでEC-CUBE(2.1.2)を利用しております。 PHPは5.2.6、DBはMySQL 5.0.51aです。 ログイン認証の部分で、現在メールアドレスになっているID部分を顧客名のname01+name02にしたいのです。 ファイルを見ていったところ、login.tplと、 data/class/pages/frontparts/中のLC_Page_FrontParts_LoginCheck.phpと data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_Login.phpあたりをいじればよいのかな?とは思うのですが、なにぶんsmartyやphpの知識が浅薄なもので、 どうか教えて下さい。 |
x41 |
投稿日時: 2008/9/24 7:53
対応状況: −−−
|
仙人 登録日: 2007/11/23 居住地: 投稿: 308 |
Re: ログインをメールアドレスから変更したい まずは、login_emailをname01に書き換えてロジックを追ってみるとできるかも。。
|
kaworu |
投稿日時: 2008/9/24 9:33
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
Re: ログインをメールアドレスから変更したい 返信有り難うございます。
"login_email"部分を"nama01"にそれぞれ書き換えてみたところ、 「メールアドレスもしくはパスワードが正しくありません。 本登録がお済みでない場合は、仮登録メールに記載されている URLより本登録を行ってください。」となってしまいました。 LC_Page_FrontParts_LoginCheck.phpの58行目付近の // 不正なURLがPOSTされた場合はエラー表示 if (!$this->isValidToken()) { GC_Utils_Ex::gfPrintLog('invalid access :login_check.php $POST["url"]=' . $_POST['url']); SC_Utils_Ex::sfDispSiteError(PAGE_ERROR); このあたりも何らかの変更が必要でしょうか? |
miho |
投稿日時: 2008/9/25 12:45
対応状況: −−−
|
半人前 登録日: 2008/7/31 居住地: 投稿: 13 |
Re: ログインをメールアドレスから変更したい カスタマイズしたところを元通りにデフォルトの状態に戻してから、
LC_Page_FrontParts_LoginCheck.phpの、 $where = "(email = ? OR email_mobile = ?) AND status = 1 AND del_flg = 0"; のところを $where = "(name01 = ? OR name02 = ?) AND status = 1 AND del_flg = 0"; にすると、姓or名でログインできるようになるとおもいます。 名前すべてでログインする方法は・・・、頑張ってください |
kaworu |
投稿日時: 2008/9/25 17:14
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
Re: ログインをメールアドレスから変更したい ありがとうございます!
早速確認してみます。 名前全ての方法・・・、なんとか頑張ってみます。 |
kaworu |
投稿日時: 2008/9/25 17:52
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
Re: ログインをメールアドレスから変更したい 只今カスタマイズした部分をいったん全部でフォルトに戻し、
LC_Page_FrontParts_LoginCheck.phpの、 $where = "(email = ? OR email_mobile = ?) AND status = 1 AND del_flg = 0"; のところを $where = "(name01 = ? OR name02 = ?) AND status = 1 AND del_flg = 0"; に変更したのですが、姓も名もログイン出来ませんでした、 試しにメールアドレスでログインしてみるとすんなり入れてしまいました。 このファイル以外は変更は必要なかったのでしょうか? |
kigi |
投稿日時: 2008/10/1 18:26
対応状況: −−−
|
半人前 登録日: 2008/9/19 居住地: 投稿: 18 |
Re: ログインをメールアドレスから変更したい LC_Page_FrontParts_LoginCheckでログイン判定を行っていますが
その中に「$objCustomer->getCustomerDataFromEmailPass」このような記述が見受けられました。 SC_Customer.php内の「getCustomerDataFromEmailPass」メソッドでパスワードの判定まで行われているようです。 ですので変更手順から言いますと ?LC_Page_FrontParts_LoginCheck内の「lfInitParam」にPOSTされるデータを追加 ?保存されるクッキー情報の変更 ?SC_Customer.php内の「getCustomerDataFromEmailPass」SQL文を変更 ?「getCustomerDataFromEmailPass」で失敗した場合の処理96行目あたりです。 以上を変更すると変更できると思います。 |
kaworu |
投稿日時: 2008/10/1 23:36
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
Re: ログインをメールアドレスから変更したい ご返信有り難うございます。
せっかくお答え頂いたのに甘えるようで本当に申し訳ないのですが、 1.LC_Page_FrontParts_LoginCheck内の「lfInitParam」にPOSTされるデータを追加 68行目からの $this->lfInitParam(); // POST値の取得 $this->objFormParam->setParam($_POST); if (!isset($_POST['mode'])) $_POST['mode'] = ""; switch($_POST['mode']) { case 'login': $this->objFormParam->toLower('login_email'); $arrErr = $this->objFormParam->checkError(); このあたりの分かと思うのですが、どのような追加をすればよろしいでしょうか? 2.保存されるクッキー情報の変更 83行目あたりの $arrForm = $this->objFormParam->getHashArray(); // クッキー保存判定 if ($arrForm['login_memory'] == "1" && $arrForm['login_email'] != "") { $objCookie->setCookie('login_email', $_POST['login_email']); } else { $objCookie->setCookie('login_email', ''); } login_emaiを変更でしょうか? 3.SC_Customer.php内の「getCustomerDataFromEmailPass」SQL文を変更 emailをname01に書き換えで出来ますでしょうか?。 すみません、どうかご教授ください。 |
kigi |
投稿日時: 2008/10/2 10:18
対応状況: −−−
|
半人前 登録日: 2008/9/19 居住地: 投稿: 18 |
Re: ログインをメールアドレスから変更したい lfInitParamへの追加は
を追加し、
を削除する。
SC_Customer.phpをこのように変更してはどうでしょうか テストを行っていないので何とも言えませんが
|
kaworu |
投稿日時: 2008/10/2 21:17
対応状況: −−−
|
半人前 登録日: 2008/8/29 居住地: 投稿: 23 |
Re: ログインをメールアドレスから変更したい kigi様
詳しい説明有り難うございます。 早速試してみます、またご報告させていただきます |
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |