Foros del Web » Programando para Internet » PHP »

Función is_numeric

Estas en el tema de Función is_numeric en el foro de PHP en Foros del Web. Hola a todos! tengo un formulario donde quiero validar por php que un campo (entero) no sea un número, pero con este código... $campo = ...
  #1 (permalink)  
Antiguo 07/06/2011, 20:07
 
Fecha de Ingreso: mayo-2010
Mensajes: 70
Antigüedad: 13 años, 10 meses
Puntos: 1
Función is_numeric

Hola a todos! tengo un formulario donde quiero validar por php que un campo (entero) no sea un número, pero con este código...

$campo = $_POST['nombre'];

if( ! is_numeric($campo)){
return true;
}else{
return false;
}

me ocurre que funciona la validación si ingreso todo números (false) o todo letras(true) pero si los combino ej: pedro1235 me da como que es true... espero que me hayan comprendido gracias
  #2 (permalink)  
Antiguo 07/06/2011, 20:09
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Función is_numeric

Te da eso porque eso es lo que escribiste, si tu le dices ! estas negando la funcion por lo que el condicional cuando no es numerico devuelve true, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 07/06/2011, 20:24
 
Fecha de Ingreso: mayo-2010
Mensajes: 70
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Función is_numeric

quizás no me expliqué bien, lo que quise decir es que quiero evaluar en caso de que se ingrese marcelo233, de esta forma me toma como si estuviera bien, pero no quiero eso quiero que en ese caso me de error.
ya saqué ! y me pasa lo mismo
  #4 (permalink)  
Antiguo 07/06/2011, 20:34
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Función is_numeric

De verdad que todavía sigo perdido en lo que quieres hacer. ¿Quieres que valide o que no valide? Trata de brindar un mejor ejemplo de los que pueden o no para que se te pueda indicar mejor lo que debes hacer. También puedes hacer uso de expresiones regulares para verificar si cumple con los requerimientos.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 07/06/2011, 20:35
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Función is_numeric

si haces esto
Código PHP:
Ver original
  1. $campo = $_POST['nombre'];
  2.  
  3. if(is_numeric($campo)){
  4.     return true;
  5. }else{
  6.     return false;
  7. }
y envias marcelo233,te aseguro que te retornara false;, ahora si haces esto
Código PHP:
Ver original
  1. $campo = $_POST['nombre'];
  2.  
  3. if(!is_numeric($campo)){
  4.     return true;
  5. }else{
  6.     return false;
  7. }
te va a devolver true porque estarias buscando los que no sean numericos, ese no es el resultado que te da??
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #6 (permalink)  
Antiguo 07/06/2011, 20:45
 
Fecha de Ingreso: mayo-2010
Mensajes: 70
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Función is_numeric

yo lo que quiero es que no haya ningún número en el string que se le pasa, en síntesis si le paso marcelo1222 tendría que dar error y el usuario sólo podría ingresar un string sin número. este campo corresponde a un nombre de persona.
  #7 (permalink)  
Antiguo 07/06/2011, 20:48
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Función is_numeric

entonces no estas haciendo la validacion correcta, ya que marcelo123 el 123 es parte del string, tendrias que utilizar expresiones regulares en el area de aportes del foro hay un aporte que te indica como hacerlo
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #8 (permalink)  
Antiguo 07/06/2011, 20:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Función is_numeric

Usa ctype_alpha.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: Ninguno
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 22:43.