aquí vengo con otra de mis burradas.. hice mi super mega clase de validación de datos, pero oh! sorpresa, no me acepta los acentos ¬¬' ni la eñe..
en fin lo estoy haciendo con preg_match, y siento que algo me estoy perdiendo.. será que mi expresión regular esta mal???
jejeje les dejo la clasesilla, cualquier ayuda, será bien recibida ^^
Código PHP:
Ver original
<?php class valida{ private $rsp; function __construct(){ $this -> rsp = null; } function vacio($campo="", $valor=""){ $this -> rsp .= "<br>El campo <strong>".$campo."</strong> no puede estar vacio"; return true; } else return false; } function numeros($campo="",$valor=""){ if(!$this -> vacio($campo,$valor)) $this -> rsp .= "<br>El campo <strong>".$campo."</strong> debe contener solo números"; } function caracteres($campo="",$valor=""){ if(!$this -> vacio($campo,$valor)) $this -> rsp .= "<br>El campo <strong> ".$campo."</strong> debe contener solo caracteres".$valor; } function correo($campo="",$valor=""){ if(!$this -> vacio($campo,$valor)) $this -> rsp .= "<br>El campo <strong>".$campo."</strong> no contiene un correo electronico valido"; } function alfanumerico($campo,$valor){ if(!$this -> vacio($campo,$valor)) if(!preg_match("/^([0-9a-zA-ZáéíóúàèìòùÁÉÍÓÚÀÈÌÒÙÄËÏÖÜäëïöüñÑ;\.,-_{}*!\"&%()=¿?¡<>\/ ]+)$/",$valor)) $this -> rsp .= "<br>El campo <strong>".$campo."</strong> contiene caracteres invalidos"; } function telefono($campo,$valor){ if(!$this -> vacio($campo,$valor)) $this -> rsp .= "<br>El campo <strong>".$campo."</strong> contiene caracteres invalidos"; } function comprobarDatos($campos){ foreach($campos AS $clave => $valor){ switch($valor['tipo']){ case 'numerico': $this -> numeros($clave, $valor["valor"]); break; case 'caracter': $this -> caracteres($clave, $valor["valor"]); break; case 'correo': $this -> correo($clave, $valor["valor"]); break; case 'alfanumerico': $this -> alfanumerico($clave, $valor["valor"]); break; case 'telefono': $this -> telefono($clave, $valor["valor"]); break; default: } } return $this -> rsp; } } ?>