Foros del Web » Programando para Internet » PHP »

validando

Estas en el tema de validando en el foro de PHP en Foros del Web. Hola tengo un pequeño problema al querer validar un formulario y no se de donde es la fuente del error. Estoy validando un campo vacio ...
  #1 (permalink)  
Antiguo 22/12/2009, 10:41
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
validando

Hola tengo un pequeño problema al querer validar un formulario y no se de donde es la fuente del error.

Estoy validando un campo vacio con la funcion empty() y solo hago esto:


Código PHP:
$nombre =$_POST['nombre'];
$nombre mysql_real_escape_string(stripslashes(trim($nombre)));
if (empty(
$nombre)) {
echo 
'ERROR: Ingrese su nombre.';
die ();

Cuando no escribo nada en el campo lo valida... pero cuando escribo algo acompañado de un signo de interrogacion (?) me interpreta como si estuviera vacio ... porque? los valores los paso con prototype (aunque no creo que tenga algo que ver). Espero me aclaren mi duda, saludos.
__________________
Quitenme la vida pero no la bebida.
  #2 (permalink)  
Antiguo 22/12/2009, 10:48
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: validando

hace un echo antes de if empty

$nombre = "test";
$nombre = mysql_real_escape_string ( stripslashes ( trim ( $nombre ) ) );
echo $nombre;

comenta resultados!
__________________
More about me...
~ @rhyudek1
~ Github

Última edición por Hidek1; 22/12/2009 a las 11:07
  #3 (permalink)  
Antiguo 22/12/2009, 11:06
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: validando

Hola, lo cambie al stripcslashes... pero cuando escribo "test?" .... me sale el mensaje de que está vacio... que puede ser?
__________________
Quitenme la vida pero no la bebida.
  #4 (permalink)  
Antiguo 22/12/2009, 11:09
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: validando

intenta con esto

Código PHP:
Ver original
  1. $nombre = "test";
  2. $nombre = mysql_real_escape_string ( stripcslashes ( trim ( $nombre ) ) );
  3. echo $nombre;
  4. echo "<br>------<br>";
  5. $nombre = "test";
  6. $nombre = stripcslashes(trim($nombre));
  7. echo $nombre;

hay veces que mysql_real_escape_string tiene problemas .. por lo general si no has echo ninguna conexion a mysql

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 22/12/2009, 11:29
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: validando

bueno, obviamente que hago una conexión a a la base de datos ya que lo que envio en el formulario lo tengo que guardar .... además si no lo hicera saldría un error del real_scape_string(), pero creo que está demás ponerlo en el ejemplo...

Lo unico que hago es enviar el nombre por POST ... ahora, no entiendo muy bien ese ejemplo , me lo puedes explicar? ya que los campos del formulario son muchos y todos tienen ese problema al agregar el signo (?)....

Ahora que me fijo, cuando escribo el ? en otros campos.... retorna al primer empty() que es el del campo $nombre.

Edito: He provado con quitarle todas esas funciones a esa cadena... y aún salta al primer empty() ... no será problema de la función prototype?
__________________
Quitenme la vida pero no la bebida.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:06.