VALIDACION CAMPO DOUBLE

Iniciado por chuck777, 17 Junio 2013, 22:34 PM

0 Miembros y 1 Visitante están viendo este tema.

chuck777

Buenas tardes , estoy realizando una aplicacion, en la cual tengo un formulario donde el usuario debe de ingresar un monto (Double), lo que quiero es validar que el usuario no meta un valor errado, por ejemplo : 356,14 el valo correcto deberia ser 356.14.... quiesiera que me ayudar en validar ese campo.. Estoy trabajando con PHP+MYSQL

De antemano muchas gracias !!!!

engel lex

que tal si en vez de evitar que el usuario meta un mensaje errado no simplemente le haces un str_replace entre la coma y el punto y listo?
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

:ohk<any>

Bueno si el valor introducido es 356,14 no hay mucho problema, puedes usar el str_replace o tambien puedes darle number_format(), de cualquier forma se puede arreglar...

En caso de que el usuario ponga un número mas elevado como por ejemplo: 172.881.827,14 o ponga 172,881,827.14 y utilizas el str_replace de forma indistinta tendrás otro problema entre manos...

Lo mejor es realizar una validación con JS al momento de introducir el dato en el formulario (creo yo) y con PHP hacer una validación adicional, finalmente en Mysql poner el campo de tipo DECIMAL(10,2).

Saludos
Y es que a veces pienso que si no estuviera loco no podría salir adelante.
Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.

chuck777

Muchas Gracias por las respuesta.. ya pruebo a ver como me va con str_replace y les cuento!!!!

chuck777

Listo ... Muchas gracias

$cadena = $_POST['ind1'];
         $cadena = str_replace (",", ".", $cadena);
         $cadena2 = $_POST['ind2'];
         $cadena2 = str_replace (",", ".", $cadena2);
                        
         // Insertar Datos en la Tabla

         $sql="INSERT INTO det_indicadores_ofi_recaudacion(ID_DET_INDICADOR,ID_OFICINA,ID_INDICADOR,MES,MONTO1,MONTOA,MONTO2,CANTCLI,CLIACT) VALUES ('',                                                                                '1','1','$mes','$cadena','$cadena2','','','');";