質問 > フロント機能 > 会員登録ができない2.13.1 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
nacho |
投稿日時: 2014/3/10 15:46
対応状況: −−−
|
一人前 登録日: 2008/12/8 居住地: 投稿: 103 |
Re: 会員登録ができない2.13.1 yuh様に教えていただきました箇所を2.11.5と2.13.1を抜粋してみました。
どうぞよろしくお願いします。 (2.11.5)LC_Page_Entry.php ---------------------------------------------------------- // PC時は規約ページからの遷移でなければエラー画面へ遷移する if ($this->lfCheckReferer($arrForm, $_SERVER['HTTP_REFERER']) === false) { SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); } . . . /** * kiyaku.php からの遷移の妥当性をチェックする * * 以下の内容をチェックし, 妥当であれば true を返す. * 1. 規約ページからの遷移かどうか * 2. PC及びスマートフォンかどうか * 3. $post に何も含まれていないかどうか * * @access protected * @param array $post $_POST のデータ * @param string $referer $_SERVER['HTTP_REFERER'] のデータ * @return boolean kiyaku.php からの妥当な遷移であれば true */ function lfCheckReferer(&$post, $referer){ if (SC_Display_Ex::detectDevice() !== DEVICE_TYPE_MOBILE && empty($post) && (preg_match('/kiyaku.php/', basename($referer)) === 0)) { return false; } return true; } ---------------------------------------------------------- (2.13.1)LC_Page_Entry.php ---------------------------------------------------------- // PC時は規約ページからの遷移でなければエラー画面へ遷移する if ($this->lfCheckReferer() === false) { SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, '', true); } . . . /** * kiyaku.php からの遷移の妥当性をチェックする * * 以下の内容をチェックし, 妥当であれば true を返す. * 1. 規約ページからの遷移かどうか * 2. PC及びスマートフォンかどうか * 3. 自分自身(会員登録ページ)からの遷移はOKとする * * @access protected * @return boolean kiyaku.php からの妥当な遷移であれば true */ public function lfCheckReferer() { $arrRefererParseUrl = parse_url($_SERVER['HTTP_REFERER']); $referer_urlpath = $arrRefererParseUrl['path']; $kiyaku_urlpath = ROOT_URLPATH . 'entry/kiyaku.php'; $arrEntryParseUrl = parse_url(ENTRY_URL); $entry_urlpath = $arrEntryParseUrl['path']; $allowed_urlpath = array( $kiyaku_urlpath, $entry_urlpath, ); if (SC_Display_Ex::detectDevice() !== DEVICE_TYPE_MOBILE && !in_array($referer_urlpath, $allowed_urlpath)) { return false; } return true; } ---------------------------------------------------------- |
yuh |
投稿日時: 2014/3/10 16:14
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 会員登録ができない2.13.1 2.11.5の方はリファラーのチェックが効いてないので、リファラーが無い状態でも通っていただけですね。
取り急ぎリファラーが無くても通る状態にするのであれば
です。 正直lfCheckReferer()の意味が全くなくなるので、微妙ですが。 |
nacho |
投稿日時: 2014/3/10 19:04
対応状況: −−−
|
一人前 登録日: 2008/12/8 居住地: 投稿: 103 |
Re: 会員登録ができない2.13.1 yuh様
お返事をありがとうございます。 また、対応策もお教えくださり大変助かります。 リファラーがなくても通る状態にしてしまって 何か問題はないのでしょうか。 リファラーという言葉を初めて聞きまして 検索し、大まかな意味は理解したのですが 会員登録時に規約に同意せずに登録が出来てしまう場合が発生するということで、よろしいでしょうか。 今まではそれでやっていたので、大きな問題ではないと思うのですが 他のみなさまは、どのようにご対応されているのでしょうか。 お客様に都度、バージョンアップ等をご提案する形をとるのか それとも、 リファラーがある状態でもどのような環境の方にも通用する なにか対応策があるのでしょうか? どうぞよろしくお願いしいます。 |
yuh |
投稿日時: 2014/3/10 19:59
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 会員登録ができない2.13.1 リファラ周りは完全に無視で、規約のページを会員登録の下の方に配置して、会員登録のボタンを押す=規約に同意としてやってます。
色々方法はあると思いますが、ある程度のカスタマイズが必要になったりします。 |
nacho |
投稿日時: 2014/3/11 15:39
対応状況: 解決済
|
一人前 登録日: 2008/12/8 居住地: 投稿: 103 |
Re: 会員登録ができない2.13.1 yuh様
お返事をありがとうございます。 なるほど!同じようにしてみます。 このたびはありがとうございました。 |
« 1 (2) |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |