Holas!
Como tip, cuando no obtienes lo que quieres, es bueno hacer depuración con unos print dentro del bucle, de modo de ver (en tiempo de desarrollo) qué es lo que realmente se está guardando en las variables por cada iteración del ciclo.
Ahora, colgándome un poco de lo que dice ocp001a, prueba además a cambiar el tipo de ciclo, que en vez de ir sumando segundos, armes la fecha sumando 1 día con la función mktime().
Código PHP:
$fecha_inicio = strtotime($fechainicio);
$fecha_fin = strtotime($fechafin);
$fecha = $fecha_inicio;
while ($fecha < $fecha_fin)
{
// aca iría una depuración:
print "<br/>\n[fecha] ".$fecha;
// acá el resto del código....
$query = "INSERT......".date("Y-m-d", $fecha);
// más depuración:
print "\n[query] ".$query;
// y acá el incremento:
$fecha = mktime(0,0,0,date("m", $fecha)+0,date("d",$fecha)+1,date("Y", $fecha)+0);
}
Es una alternativa. Suerte!