Ignore:
Timestamp:
2010/05/08 20:02:47 (14 years ago)
Author:
Seasoft
Message:

#717(電話番号の判定のパラメータ(文字数制限)誤り) 改修

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/comu-ver2/data/class/SC_CheckError.php

    r18637 r18638  
    271271    } 
    272272 
    273     /* 電話番号の判定 (数字チェックと文字数チェックを実施する。) 
    274         value[0] : 項目名 
    275         value[1] : 電番1項目目 
    276         value[2] : 電番2項目目 
    277         value[3] : 電番3項目目 
    278         value[4] : 文字数制限 
    279     */ 
     273    /** 
     274     * 電話番号の判定 
     275     * 
     276     * 数字チェックと文字数チェックを実施する。 
     277     * @param array $value 各要素は以下の通り。<br> 
     278     *     [0]: 項目名<br> 
     279     *     [1]: 電番1項目目<br> 
     280     *     [2]: 電番2項目目<br> 
     281     *     [3]: 電番3項目目<br> 
     282     *     [4]: 電話番号各項目制限 (指定なしの場合、TEL_ITEM_LEN)<br> 
     283     *     [5]: 電話番号総数 (指定なしの場合、TEL_LEN) 
     284     */ 
    280285    function TEL_CHECK($value) { 
    281         if(isset($this->arrErr[$value[1]])) { 
     286        $telItemLen = isset($value[4]) ? $value[4] : TEL_ITEM_LEN; 
     287        $telLen = isset($value[5]) ? $value[5] : TEL_LEN; 
     288 
     289        if (isset($this->arrErr[$value[1]]) || isset($this->arrErr[$value[2]]) || isset($this->arrErr[$value[3]])) { 
    282290            return; 
    283291        } 
     
    298306        $total_count = 0; 
    299307        for($i = 1; $i <= 3; $i++) { 
    300             if(strlen($this->arrParam[$value[$i]]) > 0 && strlen($this->arrParam[$value[$i]]) > $value[4]) { 
    301                 $this->arrErr[$value[$i]] .= "※ " . $value[0] . $i . "は" . $value[4] . "字以内で入力してください。<br />"; 
     308            if(strlen($this->arrParam[$value[$i]]) > 0 && strlen($this->arrParam[$value[$i]]) > $telItemLen) { 
     309                $this->arrErr[$value[$i]] .= "※ " . $value[0] . $i . "は" . $telItemLen . "字以内で入力してください。<br />"; 
    302310            } else if (strlen($this->arrParam[$value[$i]]) > 0 && !EregI("^[[:digit:]]+$", $this->arrParam[$value[$i]])) { 
    303311                $this->arrErr[$value[$i]] .= "※ " . $value[0] . $i . "は数字で入力してください。<br />"; 
     
    307315 
    308316        // 合計値チェック 
    309         if ($total_count > TEL_LEN) { 
    310             $this->arrErr[$value[3]] .= "※ " . $value[0] . "は" . TEL_LEN . "文字以内で入力してください。<br />"; 
     317        if ($total_count > $telLen) { 
     318            $this->arrErr[$value[3]] .= "※ " . $value[0] . "は" . $telLen . "文字以内で入力してください。<br />"; 
    311319        } 
    312320    } 
Note: See TracChangeset for help on using the changeset viewer.