buscar registros en BD por fecha
Publicado por localhost (22 intervenciones) el 29/07/2009 20:07:33
Hola a todos, tengo una base de datos MySql y que manejo con PHP necesito hacer un filtrado para ver aquellos registros con una fecha anterior a la que paso en un formulario, ya cojo la fecha dentro del código PHP y he conseguido comparar dos fechas para saber cual es mayor y me funciona, pero con dos fechas introducidas, lo q no se es como hacer para comprarar un fecha introducida con una recuperada de la Base de Datos, pongo parte de lo q tengo echo por si puede ayudar a entender la situación.
$filtrar=$_REQUEST["filtrar"]; //boton del formulario de filtrado
$sql="SELECT cliente.dni, cliente.nombre, cliente.apellidos, poliza.numPoliza, poliza.tipo, poliza.prima, poliza.fecha"
. " FROM poliza, cliente "
. " WHERE cliente.dni= poliza.dniCliente";
if (isset($filtrar)){
$dni=$_REQUEST['dni'];
if ($dni!=" "){ // si filtrado por DNI añadimos a la seleccion
$sql = $sql. " AND cliente.dni = '$dni'";
}
$fechaEfecto=$_REQUEST['fefecto'];
if ($fechaEfecto!=" "){
AQUI DEBO PONER EL TROZO DE CÓDIGO PARA EL FILTRADO DE LA FECHA
}
}
$sql=$sql . " ORDER BY tipo ";
Y para comparar las fechar tengo el siguiente código:
$fechaFiltrado=$fechaEfecto;
list($dia,$mes,$año)=explode('/',$fechaFiltrado);
$fechaFiltrado=mktime(0,0,0,$mes,$dia,$año);
$fechaOperar=fechaes($fila[fechaEfecto]);
echo ( $fechaOperar);
list($dia,$mes,$año)=explode('-',$fechaOperar);
$fechaOperar=mktime(0,0,0,$mes,$dia,$año);
if ($fechaFiltrado>$fechaOperar){
AQUI ME QUEDO CON LA FECHA MAYOR
}
Muchas Gracias de antemano, si alguien me puede ayudar algo se lo agradezco enormemento porque estoy atrancado y no puedo continuar. Muchas gracias nuevamente.
$filtrar=$_REQUEST["filtrar"]; //boton del formulario de filtrado
$sql="SELECT cliente.dni, cliente.nombre, cliente.apellidos, poliza.numPoliza, poliza.tipo, poliza.prima, poliza.fecha"
. " FROM poliza, cliente "
. " WHERE cliente.dni= poliza.dniCliente";
if (isset($filtrar)){
$dni=$_REQUEST['dni'];
if ($dni!=" "){ // si filtrado por DNI añadimos a la seleccion
$sql = $sql. " AND cliente.dni = '$dni'";
}
$fechaEfecto=$_REQUEST['fefecto'];
if ($fechaEfecto!=" "){
AQUI DEBO PONER EL TROZO DE CÓDIGO PARA EL FILTRADO DE LA FECHA
}
}
$sql=$sql . " ORDER BY tipo ";
Y para comparar las fechar tengo el siguiente código:
$fechaFiltrado=$fechaEfecto;
list($dia,$mes,$año)=explode('/',$fechaFiltrado);
$fechaFiltrado=mktime(0,0,0,$mes,$dia,$año);
$fechaOperar=fechaes($fila[fechaEfecto]);
echo ( $fechaOperar);
list($dia,$mes,$año)=explode('-',$fechaOperar);
$fechaOperar=mktime(0,0,0,$mes,$dia,$año);
if ($fechaFiltrado>$fechaOperar){
AQUI ME QUEDO CON LA FECHA MAYOR
}
Muchas Gracias de antemano, si alguien me puede ayudar algo se lo agradezco enormemento porque estoy atrancado y no puedo continuar. Muchas gracias nuevamente.
Valora esta pregunta


0