Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: Xaina en 26 Agosto 2008, 23:33 PM

Título: Validaciones is_numeric() me acepta letras o.O
Publicado por: Xaina en 26 Agosto 2008, 23:33 PM
Hola! estoy haciendo las validaciones correspondientes a un formulario y utilizo la función is_numeric() para validar si la entrada de datos en un txt fue númerica (un campo como DNI o cédula de identidad), para mi sorpresa después de varias combinaciones, me encontre con esto:

Código (php) [Seleccionar]
<?php
$DNI $_REQUEST['txtDNI'];
        
       
//datos capturados en la variable $DNI ==> "222e2222"

if (!is_numeric($DNI)) 
{
echo "NO es númerico";
}
else
{
echo "Es númerico";
}
?>


Eso me devuelve "Es númerico" cuando debería decirme que NO lo es, tengo entendido que PHP se encarga de asignar los tipos de datos y acá la variable debería ser reconocida como una cadena o me equivoco?
Título: Re: Validaciones is_numeric() me acepta letras o.O
Publicado por: luiggy2 en 27 Agosto 2008, 11:21 AM
Aqui te dejo la explicación, sacada de php.net

Citar
is_numeric():

Encuentra si la variable dada es numérica. Las cadenas numéricas consisten de un signo opcional, cualquier número de dígitos, una parte decimal opcional y una parte exponencial opcional. Por lo tanto, +0123.45e6 es un valor numérico válido. La notación hexadecimal (0xFF) es permitida también pero solo sin partes de signo, valor decimal y valor exponencial.

Saludos!