質問編集履歴
1
変更
    
        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($ 
     | 
| 
      
 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  
     | 
| 
      
 21 
     | 
    
         
            +
              public static function check_name($value,$colName,$length)
         
     | 
| 
       22 
22 
     | 
    
         
             
              {
         
     | 
| 
       23 
23 
     | 
    
         
             
                $error = [];
         
     | 
| 
       24 
     | 
    
         
            -
                self::check_input($ 
     | 
| 
      
 24 
     | 
    
         
            +
                self::check_input($value,$colName);
         
     | 
| 
       25 
     | 
    
         
            -
                 
     | 
| 
      
 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  
     | 
| 
      
 33 
     | 
    
         
            +
              public static function check_mail($value,$colName)
         
     | 
| 
       32 
34 
     | 
    
         
             
              {
         
     | 
| 
       33 
35 
     | 
    
         
             
                $error = [];
         
     | 
| 
       34 
     | 
    
         
            -
                self::check_input($ 
     | 
| 
      
 36 
     | 
    
         
            +
                self::check_input($value,$colName);
         
     | 
| 
       35 
     | 
    
         
            -
                $ 
     | 
| 
      
 37 
     | 
    
         
            +
                $mail = filter_input(INPUT_POST, $value);
         
     | 
| 
       36 
     | 
    
         
            -
                if($ 
     | 
| 
      
 38 
     | 
    
         
            +
                if(filter_var($mail,FILTER_VALIDATE_EMAIL) === false){
         
     | 
| 
       37 
     | 
    
         
            -
                  $error[] = $colName . ' 
     | 
| 
      
 39 
     | 
    
         
            +
                  $error[] = $colName . 'を正しい形式で入力してください。';
         
     | 
| 
       38 
     | 
    
         
            -
             
     | 
| 
      
 40 
     | 
    
         
            +
                  }
         
     | 
| 
       39 
41 
     | 
    
         
             
                return $error;
         
     | 
| 
       40 
42 
     | 
    
         
             
              }
         
     | 
| 
       41 
43 
     | 
    
         | 
| 
       42 
     | 
    
         
            -
              public static function check_pass($ 
     | 
| 
      
 44 
     | 
    
         
            +
              public static function check_pass($value,$colName)
         
     | 
| 
       43 
45 
     | 
    
         
             
              {
         
     | 
| 
       44 
46 
     | 
    
         
             
                $error = [];
         
     | 
| 
       45 
     | 
    
         
            -
                self::check_input($ 
     | 
| 
      
 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',$ 
     | 
| 
      
 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 
     | 
| 
      
 64 
     | 
    
         
            +
              ValidateForm::check_name($_POST['name'],'名前',6);
         
     | 
| 
       62 
     | 
    
         
            -
              $mail 
     | 
| 
      
 65 
     | 
    
         
            +
              ValidateForm::check_mail($_POST['mail'],'メール');
         
     | 
| 
       63 
     | 
    
         
            -
              $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>
         
     |