Foros del Web » Programando para Internet » PHP »

Validar campo de una bd mysql con php

Estas en el tema de Validar campo de una bd mysql con php en el foro de PHP en Foros del Web. Hola a todos: La cuestión es que necesito validar un campo a través de php, el campo es el No. de carnet de identidad, por ...
  #1 (permalink)  
Antiguo 04/07/2006, 08:30
 
Fecha de Ingreso: diciembre-2005
Mensajes: 16
Antigüedad: 18 años, 4 meses
Puntos: 0
De acuerdo Validar campo de una bd mysql con php

Hola a todos:
La cuestión es que necesito validar un campo a través de php, el campo es el No. de carnet de identidad, por ejemplo mi número de carnet de identidad es
84030801622--- Acontinuacion voy a desglozar cada uno de los números que conforman el carnet de identidad
84-año en el que yo nací
03-mes en el que nací
08-día en que nací
el antepenúltimo número nos permite saber el sexo de la persona si es par es masculino, si es impar es femenino en mi caso el antepenúltimo número es 2 porque soy masculino, quiero que cuando se entre el no. de carnet de identidad salga automáticamente en otros campos la edad, el sexo, la fecha de nacimiento y que por ejemplo que los 2 primeros números que son el año nada más acepte del 01 al 99, los dos siguientes que son el mes: que acepte solamente del 01 al 12 y los dos numeros que le siguen que son el día de nacimiento acepte solamente del 01 al 31, gracias de antemano les agradecería mucho si me pudieran ayudar
  #2 (permalink)  
Antiguo 05/07/2006, 13:31
hen
 
Fecha de Ingreso: diciembre-2003
Ubicación: Buenos Aires
Mensajes: 63
Antigüedad: 20 años, 4 meses
Puntos: 1
Bueno fijate aca:

http://ar.php.net/manual/es/function.substr.php

chao
__________________
.:hEN
DevHen
EXITOS
  #3 (permalink)  
Antiguo 10/07/2006, 11:51
 
Fecha de Ingreso: diciembre-2005
Mensajes: 16
Antigüedad: 18 años, 4 meses
Puntos: 0
hen te agradezco infinitamente tu ayuda pero es que soy un super novato y no tengo ni idea de lo que explica el tutorial, si me pudieras ayudar con mi te estaré muy agradecido, gracias...
  #4 (permalink)  
Antiguo 10/07/2006, 11:56
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
x mas q seas novato imagino tendras nociones de operadore de logica? < > & | etc...

bueno con la funcion q te pasaron puedes ir tomadno lso valores tal cual los explicaste:

$var = '84030801622';

$anio = substr($var,0,2);
$mes = substr($var,2,4);
// si asi con todos. luego simplemente validas con if

if ( is_numeric($anio) ){
//tu sabras q hacer, en la linea anterior podras validar todos juntando las distintas cadenas de validacion con &&, saludos
}
  #5 (permalink)  
Antiguo 10/07/2006, 12:21
Avatar de emilio21  
Fecha de Ingreso: enero-2005
Ubicación: Venezuela
Mensajes: 320
Antigüedad: 19 años, 3 meses
Puntos: 1
aporto mi ayuda.

hola amigo!

te explico detalladamente:

con la funcion 'substr' te sustrae de una cadena de texto ciertos digitos indicados por ti...

por ejemplo:

mi cadena es
$cadena = "123456";

y yo quiero sustraer 3 y 4, entonces le digo:
$digitos_sustraidos = substr($cadena, 2, 2);

esto quiere decir que comience a partir de 3 y agarre este y el que le sigue...

entonces en cuanto a lo que tu expones pongo el ejemplo:
Código PHP:
<?php
$carnet 
"84030801622";

$ano substr($carnet02);
$mes substr($carnet22);
$dia substr($carnet42);

//imprimimos la fecha de nacimiento
$fecha_nac $dia."/".$mes."/".$ano;
echo 
$fecha_nac;

//verificamos el sexo

$num_sex substr($carnet, -21); 

//verificas si es par o impar. en las faqs hay ejemplos.
?>
para verificar lo del numero de dias, meses y lo del año... eso tienes que hacerlo al momento de generar el numero de carnet
__________________
¡Estamos para Enseñar y Aprender!

Última edición por emilio21; 10/07/2006 a las 12:32
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 10:42.