teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

変更

2020/02/17 07:54

投稿

yuki911
yuki911

スコア27

title CHANGED
File without changes
body CHANGED
@@ -9,7 +9,7 @@
9
9
  class ValidateForm
10
10
  {
11
11
 
12
- public static function check_input($colName,$value)
12
+ public static function check_input($value,$colName)
13
13
  {
14
14
  $error = [];
15
15
  if($value = ''){
@@ -18,32 +18,35 @@
18
18
  return $error;
19
19
  }
20
20
 
21
- public static function check_mail($colName,$value)
21
+ public static function check_name($value,$colName,$length)
22
22
  {
23
23
  $error = [];
24
- self::check_input($colName,$value);
24
+ self::check_input($value,$colName);
25
- if(filter_var($value,FILTER_VALIDATE_EMAIL) === false){
25
+ $name = filter_input(INPUT_POST, $value);
26
+ $name_length = mb_strlen($name,"UTF-8");
27
+ if($name_length > $length){
26
- $error[] = $colName . 'を正しい形式で入力してください。';
28
+ $error[] = $colName . 'は'. $length . '文字以下で入力してください。';
27
- }
29
+ }
28
30
  return $error;
29
31
  }
30
32
 
31
- public static function check_name($colName,$value,$length)
33
+ public static function check_mail($value,$colName)
32
34
  {
33
35
  $error = [];
34
- self::check_input($colName,$value);
36
+ self::check_input($value,$colName);
35
- $value_length = mb_strlen($value,"UTF-8");
37
+ $mail = filter_input(INPUT_POST, $value);
36
- if($value_length > $length){
38
+ if(filter_var($mail,FILTER_VALIDATE_EMAIL) === false){
37
- $error[] = $colName . 'は'. $length . '文字以下で入力してください。';
39
+ $error[] = $colName . 'を正しい形式で入力してください。';
38
- }
40
+ }
39
41
  return $error;
40
42
  }
41
43
 
42
- public static function check_pass($colName,$value)
44
+ public static function check_pass($value,$colName)
43
45
  {
44
46
  $error = [];
45
- self::check_input($colName,$value);
47
+ self::check_input($value,$colName);
48
+ $pass = filter_input(INPUT_POST, $value);
46
- if(preg_match('/\A(?=.*?[a-z])(?=.*?\d)[a-z\d]{6,10}+\z/i',$value)){
49
+ if(preg_match('/\A(?=.*?[a-z])(?=.*?\d)[a-z\d]{6,10}+\z/i',$pass)){
47
50
  $error[] = $colName . 'は半角英数字をそれぞれ1種類以上含む6文字以上10文字以下で入力してください。';
48
51
  }
49
52
  return $error;
@@ -58,14 +61,12 @@
58
61
  $error = [];
59
62
 
60
63
  if ($_SERVER['REQUEST_METHOD'] === 'POST') {
61
- $name = filter_input(INPUT_POST, 'name');
64
+ ValidateForm::check_name($_POST['name'],'名前',6);
62
- $mail = filter_input(INPUT_POST, 'mail');
65
+ ValidateForm::check_mail($_POST['mail'],'メール');
63
- $pass = filter_input(INPUT_POST, 'pass');
66
+ ValidateForm::check_pass($_POST['pass'],'パスワード');
64
67
  }
65
- ValidateForm::check_name('名前',$name,6);
66
- ValidateForm::check_mail('メール',$mail);
67
- ValidateForm::check_pass('パスワード',$pass);
68
68
  ?>
69
+
69
70
  <!DOCTYPE html>
70
71
  <html lang="ja" dir="ltr">
71
72
  <head>