バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

バグ報告 > フロント機能 > 問い合わせでの絵文字入力時のバリデーションの仕方

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
be-s
投稿日時: 2021/4/19 11:29
対応状況: −−−
一人前
登録日: 2016/2/2
居住地: manchester
投稿: 84
問い合わせでの絵文字入力時のバリデーションの仕方
EC-CUBE] 4.0.4
[レンタルサーバ] AWS
[OS] Linux
[PHP] 7.3.14
[データベース] MySQL 5.7.28
[WEBサーバ] Apache/2.4.25
[ブラウザ] Chrome
[現象]


下記URLと同じように

問い合わせ入力時に絵文字入力するとエラーになる件で
下記質問では、文字コード変更することで対応していますが、
運用時、ネクストエンジンのような受注管理システムにCSV取り込みをおこなう必要があるため
絵文字入力を避けたいので問い合わせ入力時にバリデーションをかけたいです。

問い合わせ入力時にバリデーションは、どのようにおこなえばえばよろしいでしょうか?

どなたか教えていただけないでしょうか

お手数おかけしますが宜しくお願いいたします。

https://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=22355&forum=11
tsuji
投稿日時: 2021/4/21 9:20
対応状況: −−−
仙人
登録日: 2013/11/19
居住地:
投稿: 936
Re: 問い合わせでの絵文字入力時のバリデーションの仕方
be-s 様

参考までにですが、
絵文字の判定手法は調べると出てきました。
↓では削除をしていますが、この正規表現を使ってみてテストしてみてはいかがでしょうか。
https://www.10yendama.com/archives/425


----------------
****************************************
株式会社システムフレンド
辻 拓也(takuya tsuji)
改造専門店・EC-CUBE工房
****************************************

be-s
投稿日時: 2021/4/30 15:32
対応状況: −−−
一人前
登録日: 2016/2/2
居住地: manchester
投稿: 84
Re: 問い合わせでの絵文字入力時のバリデーションの仕方
tsuji様
返信いただきましてありがとうございます。

リンク参考にし
バリデーションかけたのですが
うまくいきません。

書き方が違うなどでしょうか?

お手数ですが宜しくお願いいたします。


    /**
     * {@inheritdoc}
     */
    public function configureOptions(OptionsResolver $resolver)
    {
        $resolver->setDefaults([
            'options' => [],
            'lastname_options' => [
                'attr' => [
                    'placeholder' => 'common.last_name',
                ],
                'constraints' => [
                    new Assert\Length([
                        'max' => $this->eccubeConfig['eccube_name_len'],
                    ]),
                    new Assert\Regex([
                        'pattern' => '/^[^\s ]+$/u',
                        'message' => 'form_error.not_contain_spaces',
                    ]),
                    #絵文字入力バリデーションチェック
                    new Assert\Regex([
                        'pattern' => '/^[\u0370-\u0373\u0375-\u0377\u037A-\u037D\u037F\u0384\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03E1\u03F0-\u03FF\u1D26-\u1D2A\u1D5D-\u1D61\u1D66-\u1D6A\u1DBF\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u2126\uAB65]|\uD800[\uDD40-\uDD8E\uDDA0]|\uD834[\uDE00-\uDE45]/u',
                        'message' => '絵文字を入力しないで下さい。a'
                    ]),
                    new Assert\Regex([
                        'pattern' => '/^(?:\xEE[\x80\x81\x84\x85\x88\x89\x8C\x8D\x90-\x9D\xAA-\xAE\xB1-\xB3\xB5\xB6\xBD-\xBF]|\xEF[\x81-\x83])[\x80-\xBF]/u',
                        'message' => '絵文字を入力しないで下さい。b'
                    ]),
                    #絵文字入力バリデーションチェック
                ],
            ],
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は71,530名です
総投稿数は101,307件です

投稿数ランキング

1
seasoft
7333
2
468
2998
3
AMUAMU
2712
4
nanasess
2147
5
umebius
2000
6
yuh
1612
7
red
1449
8
h_tanaka
1080
9
tsuji
936
10
fukap
907
11
shutta
835
12
tao_s
793
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

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

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.