Foros del Web » Programando para Internet » PHP »

aceptar 0 en validacion php

Estas en el tema de aceptar 0 en validacion php en el foro de PHP en Foros del Web. buenas estoy haciendo un sistema de registro y necesito que si el usuario no cumple con cierto campo escriba 0. Mi problema es que cuando ...
  #1 (permalink)  
Antiguo 11/12/2014, 20:25
Avatar de cassini  
Fecha de Ingreso: julio-2009
Mensajes: 98
Antigüedad: 15 años, 4 meses
Puntos: 0
aceptar 0 en validacion php

buenas

estoy haciendo un sistema de registro y necesito que si el usuario no cumple con cierto campo escriba 0.

Mi problema es que cuando el usuario escribe 0 mi validación que hice del campo no me admite el 0 como valor y por lo tanto no me deja registrar el 0 en la BD (y dice "Debes introducir las horas"), esta es mi validación que hago

Código PHP:
Ver original
  1. if(empty($_POST['horas'])){
  2.                     echo "Debes introducir las horas ";
  3.                 }

no se que estoy haciendo mal y no se me ocurre como solucionarlo, si me pueden dar una orientación sobre esto se los agradecería mucho :)

*nota necesito que el formulario no me admita campos vacios

gracias por tu ayuda!!!
__________________
Humildad, ante todo humildad
  #2 (permalink)  
Antiguo 11/12/2014, 22:03
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: aceptar 0 en validacion php

La función empty() devuelve TRUE si el valor es cero, eso lo dice bien claro el manual, ¿por qué no has revisado primero?

Lo lógico sería, comprobar la existencia de la variable y luego un valor "aceptable", es decir:

Código PHP:
Ver original
  1. if (isset($x) && $x === '') // $x existe, pero viene vacía

Aquí es mejor usar isset() para verificar la existencia de la variable, pues aunque empty() también hace lo mismo además compara el valor dando falsos positivos.

Por eso la comparación adicional, para descartar falsos positivos.

Procura pensar dos veces lo que haces, lo único que hiciste mal es pensar muy poco antes de pedir ayuda, ejercita más tu mente para la próxima.

Ah, y no olvides consultar el manual.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: aceptar, formulario, registro, validacion
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 14:22.