バージョン選択

フォーラム

メニュー

オンライン状況

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

PR

デザインテンプレート EC-CUBE3.0版が登場!
広告掲載について

サイト内検索

質問 > フロント機能 > 1日の会員登録者数の制限をかけることは可能でしょうか

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
mochizuki
投稿日時: 2017/4/17 10:39
対応状況: 確認中
新米
登録日: 2017/3/14
居住地:
投稿: 1
1日の会員登録者数の制限をかけることは可能でしょうか
▼テンプレート
[EC-CUBE]
2.13.5

[現象]
一度に大量の会員登録がされてしまいました。
そのため1日の会員登録数の制限をかけたいです。
IPごとではなく全体でです。

何か方法はありますでしょうか。
よろしくお願いいたします。
468
投稿日時: 2017/4/17 11:47
対応状況: −−−
仙人
登録日: 2008/10/26
居住地:
投稿: 752
Re: 1日の会員登録者数の制限をかけることは可能でしょうか
制限される数は固定値で問題無いのでしょうか?
管理画面で変更できるようにする場合は、その情報を変更できる画面やテーブルなどを用意する必要があると思いますので、
それなりに手を加える必要が出てくると思います。

プラグイン化せずに直接カスタマイズするのであれば、
/data/class/pages/entry/LC_Page_Entry.phpのactionメソッド内に判定処理を追加すればいいのではないかと思います。

dtb_customerにcreate_dateカラムがありますので、
これを条件に件数をカウントさせれば、その日の会員登録件数をカウントできそうな気がします。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

yuh
投稿日時: 2017/4/19 1:05
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1405
Re: 1日の会員登録者数の制限をかけることは可能でしょうか
ざっくりと書いたので動作するかはわかりませんが、
LC_Page_Entry_Ex.phpに下記のコードを追加でできると思います。
//一日の最大会員登録数
//エラー時のテンプレート
部分は変更する必要があります。

    function action(){
        $objQuery =& SC_Query_Ex::getSingletonInstance();
        $checknum = 10 ;//一日の最大会員登録数
        $query = "
        SELECT
            CASE
                WHEN
                    coalesce((
                        SELECT
                            COUNT(*)
                        FROM
                            (
                                SELECT 
                                    create_date 
                                FROM 
                                    dtb_customer 
                                ORDER BY 
                                    customer_id DESC 
                                LIMIT 10
                            ) as a
                        WHERE 
                            create_date > date_trunc('hour',NOW())
                    ),0) < ?
                THEN    ?
                ELSE
                    0
            END
        ";
        $check = $objQuery->getOne($query,array($checknum,$checknum));
        if($check == 0){
            $this->tpl_mainpage = 'entry/〇〇〇.tpl';//エラー時のテンプレート
            $this->tpl_title    = '会員登録(会員登録制限)';
            return;
        }

        parent::action();
    
    }


----------------
ec-cube2系の速度UPしてみました。(商品数:100万件)
http://speedtest2.ec-lab.net/products/list.php?category_id=15
ec-cube2系最速!(自称)

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

 



ログイン


EC-CUBEペイメント

クレジットカード情報の非保持化対応

統計情報

総メンバー数は20,074名です
総投稿数は83,207件です

投稿数ランキング

1
seasoft
7331
2
AMUAMU
2712
3
nanasess
1653
4
yuh
1405
5
red
1067
6
fukap
907
7
shutta
827
8 ramrun 789
9
tsuji
784
10
468
752
11
umebius
712
12
tao_s
651
13 sumida 638
14
homan
633
15 karin 629
16 DELIGHT 571
17
patapata
502
18
flealog
483
19 tonton 436
20
ecbg
387


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© LOCKON CO.,LTD. All Rights Reserved.