Seguro pensaran "Q bolu** este flaco, si el problema es pequeño, no es grande!". Pero estan en un error, es un problema de inexperiencia (por esto lo de pequeño) que supone un problema de seguridad (GRAN problema) =)
Es asi. tengo en un formulario validacion javascript, y despues cuando envia el formulario hago la validacion en php, pero el problema es que estoy enviando alrededor de 7 u 8 campos, los cuales quiero validar todos, pero no quiero tener que hacerlos 1 por 1, entonces, hize una funcion en la cual pasar los datos y ver si son correctos o no. Les muestro el codigo.
validar.php
Código:
y en la pagina donde hago la validacion hago esto.function validar($subject1) {$subject1=$descripcion2; $prohibido = array ('<','>'); for($i=0;$i<sizeof($prohibido );$i++){ if(strstr($subject1, $prohibido [$i])){ unset($subject1); die("Se han encontrado caracteres invalidos.");}} return($subject1); }
do_register.php
Código:
require("validar.php");
Código:
if(!isset($_POST['name']) or ($_POST['name'] == NULL)) {$errors .="Error ingresando el Nombre. <br />";} else {$name=mysql_real_escape_string($_POST['name']);}
Código:
validar($name);
entonces, deberia darme error cuando se registran utilizando estos caracteres "<" y ">", pero no lo hace, los deja registrase!
mi pregunta es, ¿En que estoy errando?
otra cosa, La validacion que quiero hacer ¿La hace tmb mysql_real_escape_string?
Un abrazo! y gracias de antemanO =)