Foros del Web » Programando para Internet » PHP »

Como impido caracteres en una variable

Estas en el tema de Como impido caracteres en una variable en el foro de PHP en Foros del Web. Saludos tengo el siguiente problema, tengo una posible solucion pero la veo muy tediosa, el problema es el siguiente, tengo un campo cedula en un ...
  #1 (permalink)  
Antiguo 19/07/2006, 22:43
Avatar de devildriver  
Fecha de Ingreso: julio-2006
Mensajes: 118
Antigüedad: 18 años, 4 meses
Puntos: 0
Como impido caracteres en una variable

Saludos tengo el siguiente problema, tengo una posible solucion pero la veo muy tediosa, el problema es el siguiente, tengo un campo cedula en un formulario y en una base de datos obviamente en la bd esta de manera numerica, pero mi problema esta en que yo quiero impedir que me acepte caracteres osea quiero simplemente numeros, y cuando envio el formulario con caracteres me guarda en la bd 0 (cero) yo quiero impedir el envio y q me valide la condicion.

Lo que pienso hacer es una condicion para impedir el caracteres mediante el codigo ascii pero tampoco se como se hace en php, si tiene una funcion especial? o una estructura especifica o sintaxia predefinida?. de verdad que no se como empezar pero si se como es el manejo del if y el valor de las letras en codigo ascii, mas no como hayar la longitud de caracteres y todos esos otros aspectos utiles.
  #2 (permalink)  
Antiguo 19/07/2006, 23:41
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 19 años
Puntos: 281
podrias usar is_numeric() o is_int(), pero asi tambien corres con el riesgo de que se puedan incluir signos de mas y menos, y exponentes. Creo que lo mejor seria usar una expresion regular como esta para validar el campo:

Código PHP:
$exp_reg "0-9";
if ( !
ereg("^[$exp_reg]{3,10}$",$consulta) )
  {
  
//no es numerico, o no tiene minimo 3 caracteres, o no tiene maximo 10 caracteres 
  
}
else
  {
  
//todo correcto
  

en este ejemplo comparas si la consulta, osea lo que envia el cliente, es un numero del 0 al 9, y el {3,10} verifica si tiene minimo 3 characteres y/o si tiene maximo 10 caracteres.

espero que te sirva.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...

Última edición por juaniquillo; 19/07/2006 a las 23:57
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 21:29.