2017-03-02 3 views
0

を開き、電子メールの検証は、私は特定のドメインからの電子メールIDを持つユーザーは、新しいチケットを開いたりするために適用することができるように電子メールの入力フィールドに検証ルールを適用したいです登録、すなわち電子メールアドレスは常に[email protected]のように見えるはずです。しかし、私はis_emailを編集しようとしました()機能がosticketユーザーが<strong>osticket</strong>バージョン1.10で新しいチケット

static function is_email($email, $list=false, $verify=false){ 
     $domains = array('specificdomain.com'); 
     $pattern = "/^[a-z0-9._%+-][email protected]([a-z0-9.-]+.)*(" . implode('|', $domains) . ")$/i"; 
     if (!preg_match($pattern, $email)) { 
      return false; 
     } 

    } 
しかし、役に立たないとして怒鳴る/ class.validator.php
が含まれています。この点に関しては、どんな身体も助けてくれるでしょう。

答えて

1

あなたはドメインごとに組織を作成することができます/(\W|^)[\w.+\-]*@specificdomain\.com(\W|$)/

 static function is_email($email, $list=false, $verify=false){   
     $domains = 'specificdomain.com'; 
     $pattern = "/(\W|^)[\w.+\-]*".$domains."(\W|$)/"; 
      if (!preg_match($pattern, $email)) { 
      return FALSE;    
      }else{ 
      return TRUE; 
      } 

     } 
+0

いいえ、問題は同じですが、別のドメインのユーザーがチケットを開くことができます。ちょうど知りたいのは私が含まれているファイル/ class.validator.phpは正しいファイルですか? –

0

このパターンを試してみてください。 「ユーザー」→「組織」→「ドメイン名」→「設定」タブ→ドメインを定義してください。

これにより、そのドメインのすべてのユーザーが通話を開くことができます。組織ページの下にユーザーとして追加されます。

他のドメインをブロックする場合は、管理パネルにアクセスし、設定 - >ユーザー - >ティック登録が必要です。登録方法で「エージェントのみがユーザーを登録できます」を選択する必要があります。たとえそれが見えても、ユーザーがドメインの一部であれば、まだ登録されていなくても電話をかけることができます。

少し遅れましたが、それがあなたを助けてくれることを願っています。

関連する問題