2012-04-12 11 views
0

私はフォームシステムを構築しており、検証作業を開始しました。私は'trim|required|htmlspecialchars'を持っている私の検証の主要部分のように、私のフレームワークは、CIであるが、私は知りたいたもの:ニュージーランドの電話機のフォーム検証

A)のURLと電話で使用するのがベストだろう何*入力

B)あなたは何だろうクライアント側の検証に使用することをお勧めします。

私たちの電話番号は00 123 4567または1234567あるので、*私はニュージーランド出身

+0

http://www.phpを見てください。 net/manual/en/filter.filters.php –

答えて

1

CI's validationあなたは人生を簡単に素晴らしいjQueryのplugginsを利用したい場合は特に、対処する真剣にくだらないです。

クライアント側では、JörnZaeffererが書いたjquery pluginを使用しています。非常に簡単に取得でき、非常にカスタマイズ可能です。

URLのような標準的なもののためのメソッドがたくさんあります.NZの電話番号のために、プラグインに付属のadditional-methods.jsファイルに追加できるカスタムルールをいくつか作成しました。サイドノートとして

/** 
* matches NZ phone number formats 
* 
* +64 7 123 1234 
* or 
* 07-123-1234 
* or 
* 071231234 
* 
* spaces/hyphens optional 
* 
*/ 
jQuery.validator.addMethod('phoneNZ', function(phone_number, element) { 
return this.optional(element) || phone_number.length > 9 && 
phone_number.match(/^(0|(\+64(\s|-)?)){1}\d{1}(\s|-)?\d{3}(\s|-)?\d{4}$/, 'Please specify a valid phone number'); 


/** 
* matches NZ mobile number formats 
* 
* 021 123 1234 
* or 
* 027 123 1234 
* or 
* 022-123-1234 
* or 
* +64 21 123 1234 
* 
* spaces/hyphens optional 
* 
*/ 
jQuery.validator.addMethod('mobileNZ', function(phone_number, element) { 
return this.optional(element) || phone_number.length > 9 && 
phone_number.match(/^(0|(\+64(\s|-)?)){1}(21|22|27){1}(\s|-)?\d{3}(\s|-)?\d{4}$/); 
}, 'Please specify a valid mobile number'); 

、控えめにこれらを使用しますが、これらの数字は、計算だけで長さの制限をフリーテキストとしてそれらを残してダイヤルを計画していない限り、人々は電話番号を入力する方法のバリエーションがたくさんあります彼らに合っていないルール/文字/記号/エクステンションなどを強制することによって人々を怒らせないほうが良いです

+0

CI Validationがうまくいくように見える、ちょうど彼らがuriの検証と電話のhahaを持っていないことを恥を攻撃する方法がわからない –

+0

はい、オープンソースを歓迎します。彼らはフレームワークのようにすべてのケースを解決するのが難しい問題であるため、良い理由があります。基本的に彼らは解決策を完了できない場合、彼らは試してはいけません。 XSSフィルタは、なぜそうしてはならないかの良い例です。 – Louis

関連する問題