ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

GuessworkコミュのValidateが貧弱だ・・・

  • mixiチェック
  • このエントリーをはてなブックマークに追加
isEmpty()メソッドしかない・・・・

こんな感じ?
class BaseValidator extends Validator {
// メールアドレスチェック
function checkEmail($email) {
if($this->isEmpty($email)) {
return false;
} elseif (!preg_match('/^[^@]+@[^.]+\.[^.]+$/', $email)) {
return true;
}
return false;
}
// URLチェック
function checkURL($url) {
if($this->isEmpty($url)) {
return false;
} elseif(!ereg("^(http|https)://([a-zA-Z0-9]|\.|\-|_|\/|\?|=|~|%|&)+$",$url)){
return true;
}
return false;
}
}

コメント(1)

おいらもBaseValidator作ってますね。
中はこんな感じ

// e-mailの入力チェック
function isEMail($value) {
$pattern = '/^(?:[^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff]+'
.'(?![^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff])|"'
.'[^\\\\\x80-\xff\n\015"]*(?:\\\\[^\x80-\xff][^\\\\\x80-\xff\n\015"]*)*")'
.'(?:\.(?:[^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff]+'
.'(?![^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff])|'
.'"[^\\\\\x80-\xff\n\015"]*(?:\\\\[^\x80-\xff][^\\\\\x80-\xff\n\015"]*)*"))'
.'*@(?:[^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff]+'
.'(?![^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff])|\['
.'(?:[^\\\\\x80-\xff\n\015\[\]]|\\\\[^\x80-\xff])*\])'
.'(?:\.(?:[^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff]+'
.'(?![^(\040)<>@,;:".\\\\\[\]\000-\037\x80-\xff])|'
.'\[(?:[^\\\\\x80-\xff\n\015\[\]]|\\\\[^\x80-\xff])*\]))*$/';

return preg_match($pattern, $value);
}

// 数値チェック
function isNumber($value) {
if (mb_ereg('[^0-9]', $value)) {
return FALSE;
}
return TRUE;
}

// 日付チェック
function isDate($year, $month, $day) {
return checkdate($month, $day, $year);
}

// 文字列長チェック
function isLength($valueLength, $maxLength){
return ($valueLength <=$maxLength);
}

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Guesswork 更新情報

Guessworkのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング