Bueno... el manejo de fechas lo puedes hacer asi (mysql o php):
 
Por MySQL: 
Código:
 SELECT ABS(DATEDIFF('2007-11-30','2007-12-31'));
  Esto te entregara 31. 
Por PHP: 
 Código PHP:
    $dia1 = '2007-11-30';
$dia2 = '2007-12-31';
$dia1 = explode("-",$dia1);
$dia2 = explode("-",$dia2);
$inicio    = gregoriantojd($dia1[1], $dia1[2], $dia1[0]);
$fin    = gregoriantojd($dia2[1], $dia2[2], $dia2[0]);
echo $diferencia = abs($fin - $inicio); 
    
  Suerte!