tengo un problema, en la base de datos la fecha y hora estan guardadas en un campo TEXT de la siguiente forma (29/08/2010 11:00) la cual tiene como id=1 entonces lo que quiero hacer es comprarla con la fecha de la id=3 (29/08/2010 13:00) (Noten que cambia la hora solamente), al ser las fechas del mismo dia debo verificar la diferencia de horarios entre ellas (11:00 - 13:00) para ejecutar una accion si la diferencia horaria es de mas de 1 hora.
Lo que debo hacer es:
- Buscar el ultimo email enviado con el asunto "x".
- Buscar la fecha de ese email.
- Buscar el ultimo email enviado en total (Lo cual seria realmente el ultimo email [con cualquier asunto])
- Buscar la fecha de ese email.
- Comparar las dos fechas.
- Si son iguales paso a comprar la hora.
- Si la hora es igual o menor a 1 hora, tengo que contar cuantos emails hay entre el del asunto "x" y el de cualquier asunto, restarle eso a un contador=180 y enviar esa cantidad de emails (Esto lo tengo armado lo de los emails, no lo puse en el codigo porque no llegue a esa parte, nada mas)
- Si la hora es mayor a 1 hora, enviar 180 emails.
Lo que pude hacer hasta ahora es hasta el punto 5, pero he aqui el error! me compara (porque yo asi lo pense [mal por lo que veo]) las horas por separado entonces no me muestra realmente cual es mayor o menor en su conjunto!
les muestro el codigo!
Código PHP:
<?php
//Busco el ultimo email que envie del smtp
$sql="SELECT MAX(clave) FROM `email` WHERE asunto='x' ORDER BY clave DESC";
$res=mysql_query($sql) or die (mysql_error());
$ultimo=mysql_fetch_array($res);
echo "Ultimo email clave: ".$ultimo['0']."<br />";
$last=$ultimo['0'];
//Busco la fecha en que envie ese ultimo email de smtp
$sql2="SELECT fecha FROM `email` WHERE clave=$last";
$res2=mysql_query($sql2) or die(mysql_error());
$ultimo2=mysql_fetch_array($res2);
echo"Ultimo email fecha: ". $ultimo2['fecha']."<br/>";
$fecha1=$ultimo2['fecha'];
//Busco el ultimo email enviado de cualquier tipo
$sql3="SELECT MAX(clave) FROM `email` ORDER BY clave DESC";
$res3=mysql_query($sql3) or die (mysql_query());
$ultimo3=mysql_fetch_array($res3);
echo "Ultimo email clave: ".$ultimo3['0']."<br />";
$last2=$ultimo3['0'];
//Busco la fecha del ultimo email enviado de cualquier tipo
$sql4="SELECT fecha FROM `email` WHERE clave=$last2";
$res4=mysql_query($sql4) or die(mysql_error());
$ultimo4=mysql_fetch_array($res4);
echo"Ultimo email fecha: ". $ultimo4['fecha']."<br/>";
$fecha2=$ultimo4['fecha'];
explode("/",$fecha1);
echo "Fecha1 despues del explode ".$fecha1['0']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['1']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['2']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['3']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['4']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['5']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['6']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['7']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['8']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['9']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['10']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['11']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['12']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['13']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['14']." <br/>";
echo "Fecha1 despues del explode ".$fecha1['15']." <br/>";
$dia1=$fecha1['0'].$fecha1['1'];
$mes1=$fecha1['3'].$fecha1['4'];
$anio1=$fecha1['6'].$fecha1['7'].$fecha1['8'].$fecha1['9'];
$hora1=$fecha1['11'].$fecha1['12'];
$minutos1=$fecha1['14'].$fecha1['15'];
echo $dia1." ".$mes1." ".$anio1." ".$hora1." ".$minutos1."<br/>";
explode("/",$fecha2);
echo "Fecha2 despues del explode ".$fecha2['0']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['1']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['2']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['3']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['4']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['5']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['6']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['7']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['8']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['9']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['10']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['11']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['12']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['13']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['14']." <br/>";
echo "Fecha2 despues del explode ".$fecha2['15']." <br/>";
$dia2=$fecha2['0'].$fecha2['1'];
$mes2=$fecha2['3'].$fecha2['4'];
$anio2=$fecha2['6'].$fecha2['7'].$fecha2['8'].$fecha2['9'];
$hora2=$fecha2['11'].$fecha2['12'];
$minutos2=$fecha2['14'].$fecha2['15'];
echo $dia2." ".$mes2." ".$anio2." ".$hora2." ".$minutos2."<br/>";
if($mes1 >= $mes2){
echo $mes1." 1es mayor que ".$mes2."<br/> ";
if($dia1 >= $dia2){
echo $mes1." ".$dia1." es mayor que ".$mes2." ".$dia2."<br/> ";
}else{
echo $mes2." ".$dia2." es mayor que ".$mes1." ".$dia1."<br/> ";
}
}else{
echo $mes2." 2es mayor que ".$mes1."<br/> ";
}
?>
Un abrazo!