Debes generar las fechas que están entre tu fecha de inicio y término, recorrerlas y hacer el insert en la bd, te dejo un ej.:
PHP
// tus datos de entrada$start = '2018-11-01';$end = '2018-11-08';// generas las fechas entre el periodo$end = new DateTime($end); // éstas 2 lineas son necesarias para que DatePeriod incluya la ultima fecha$end->modify('+ 1 day');$period = new DatePeriod( new DateTime($start), new DateInterval('P1D'), $end);// recorres las fechas y haces tu insertforeach ($period as $key => $value) { $date = $value->format('Y-m-d'); // genera tu sql $sql = "INSERT INTO tabla (`fecha`, `..`) VALUES ('$date', '..')"; //echo $sql.'<br>'; // ejecuta el sql (insert)...}
Ej. del sql generado:
INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-01', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-02', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-03', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-04', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-05', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-06', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-07', '..')INSERT INTO tabla (`fecha`, `..`) VALUES ('2018-11-08', '..')
El código propuesto funciona si ambas fechas son iguales y también en caso de que no lo sean.
Link de la documentación oficial sobre el uso de DatePeriod: http://php.net/manual/es/class.dateperiod.php