_clear_errorList() ; } //get field value function _getField($field) { global ${$field}; return ${$field}; } //reset the error list function _clear_errorList(){ $this->_errorList = array(); } //public methods*************************** //check to see if there are any errors function isError(){ if (count($this->_errorList) > 0) { return TRUE; }else{ return FALSE; } } //get errors if there are any function getErrors(){ return $this->_errorList; } //retrieve the list of error messages from $_errorList function getErrorMessage(){ global $errorMessage; if (!$this->isError()) { return FALSE; }else{ foreach ($this->_errorList as $errorEntry) { $errorMessage .= $errorEntry['errmsg'].'
'; } return $errorMessage; } } //check for empty field function isEmpty($field, $errMsg = 0) { if ($errMsg == '0') { $errMsg = "$field is empty"; } $value = $this->_getField($field); if (trim($value) == ''){ $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else { return TRUE; } } function maxLength($field, $maxlength, $errMsg = 0) { $value = trim($this->_getField($field)); if ($errMsg == '0'){ $errMsg = "$field exceeds the maximum number of characters ($maxlength)."; } if ($maxlength < strlen($value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check if $$field is string function isString($field, $errMsg = 0){ if ($errMsg == '0') { $errMsg = "You did not enter a valid string for the '$field' field"; } $value = $this->_getField($field); if (!is_string($value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check to see if $$field is integer function isInteger($field, $errMsg = 0){ $value = $this->_getField($field); if ($errMsg == '0') { $errMsg = "You did not enter a valid integer for the '$field' field"; } if (!is_int($value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check to see is text function isText($field, $errMsg = 0){ if ($errMsg == '0') { $errMsg = "You did not enter valid text for the '$field' field"; } $value = $this->_getField($field); if (preg_match("/[^a-zA-Z'\.,:\;\/\?\s]/", $value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check for valid name function validName($field, $errMsg = 0){ if ($errMsg == '0') { $errMsg = "You did not enter a valid Name for the '$field' field"; } $value = $this->_getField($field); if (preg_match("/[^a-zA-Z ']/", $value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check for valid email function validEmail($field, $errMsg = 0){ if ($errMsg == '0') { $errMsg = "You did not enter a valid email address for the '$field' field"; } $value = $this->_getField($field); if (!preg_match("/^.+@.+\..+$/", $value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check for valid phone number function validPhone($field, $errMsg = 0){ if ($errMsg == '0') { $errMsg = "You did not enter a valid Phone Number for the '$field' field"; } $value = $this->_getField($field); if (!preg_match("/^(\d{3})?-?(\d{2})?\d-?(\d{4})$/", $value)) { $this->_errorList[] = array("field"=>$field, "value"=>$value, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } //check for valid date formats (including YYYY-MM-DD and MM-DD-YYYY) function validDate($field, $errMsg = 0){ $value = $this->_getField($field); if ($errMsg == '0'){ $errMsg = "$value is not a valid date format. Valid Date formats include: YYYY-MM-DD, MM-DD-YYYY"; } if (!preg_match("/((\d{4})-(\d{2})-(\d{2}))|((\d{2})-(\d{2})-(\d{4}))/", $value)){ $this->_errorList[] = array('field'=>$field, 'value'=>$value, 'errmsg'=>$errMsg); return FALSE; }else{ return TRUE; } } //check that start is before end function validChron($startfield, $endfield, $errMsg = 0){ $startvalue = $this->_getField($startfield); $endvalue = $this->_getField($endfield); if($errMsg == '0') { $errMsg = "There is a problem with $startfield and $endfield: $startvalue is after $endvalue."; } if (strtotime($startvalue) > strtotime($endvalue)) { $this->_errorList[] = array("field1"=>$startfield, "field2"=>$endfield, "value1"=>$startvalue, "value2"=>$endvalue, "errmsg"=>$errMsg); return FALSE; }else{ return TRUE; } } function validUrl($field, $errMsg = 0){ $value = $this->_getField($field); if($errMsg == '0') { $errMsg = "$value is not a valid URL"; } if (preg_match("/^(http:\/\/)?.+\..+/", $value)) { return TRUE; }else{ $this->_errorList[] = array('field'=>$field, 'value'=>$value, 'errmsg'=>$errMsg); return FALSE; } } function genericCheck($field, $pattern, $errMsg) { $value = $this->_getField($field); if (preg_match("/$pattern/", $value)) { return TRUE; }else{ $this->_errorList[] = array('field'=>$field, 'value'=>$value, 'errmsg'=>$errMsg); return FALSE; } } } ?>