Restricciones de cadenas

erestor
12 de Diciembre del 2004
Necesito ayuda,

me gustaría saber como puedo hacer para restringir un campo de texto a 5 dígitos numéricos, es decir, tengo que controlar que el código postal sean 5 números ni más caracteres ni menos, y sin caracteres alfanuméricos.

También me gustaría saber como puedo hacer para restringir caracteres en una clave, es decir, que solo sean caracteres alfanuméricos.

Gracias.

Covi
12 de Diciembre del 2004
o_O' Comorrr???
Como que no alfaNUMÉRICOS??, será que no quieres alfabéticos u otros ggg, porque los numéricos son los que necesitas, no?
Bueno, a ver, así de pronto, puede tener errores, ok?:
Como funcion:

// Más de 5 carácteres y solo números y decimales:
function solo_num($vars_num)
{
if (strlen($vars_num)>5)
{
echo "Campo demasiado largo: $vars_num.";
return false;
}
elseif(!eregi('[0-9]',$vars_num))
{
echo "Campo vacío o no es numérico: $vars_num.";
return false;
}
else
return true;
}
También puedes unirlo todo en la misma sentencia con || o como veas ;D.

Un saludo.

Covi
12 de Diciembre del 2004
Perdona, el chequeo numérico mejor así:

elseif(!eregi('[^0-9]',$vars_num))