El problema es que el FOR solo coje el primer registro que tengo en la base de datos MYSQL de la tabla vacaciones y para, los sabados/domingos funcionan perfectamente, pero realmente el WHILE carga todos los registros ya que si los muestro con un echo los saca todos.
Código:
Imagen de la ejecucion<?php include "conexion.php"; $fecha1=$_POST['data1']; $fecha2=$_POST['data2']; $fecha1 = strtotime($fecha1); $fecha2 = strtotime($fecha2); $Cont2=0; $cont=0; $diasfestivos=0; //RESTA FECHAS $segundos=($fecha2) - ($fecha1) ; $diferencia_dias=intval($segundos/60/60/24); $diferencia_dias2=$diferencia_dias+1; echo "<h3><br><font color=purple>La cantidad de días entre las 2 fechas son : <b>$diferencia_dias2</b> </font><br><br></h3>" ; //SELECCIONAR DIAS FESTIVOS DE LA TABLA $festivo=mysql_query ("SELECT Fecha FROM tab_vacaciones;",$conexion); if ($festivo!=0) { while ($solucion=mysql_fetch_array($festivo)) { $diasfestivos=$solucion[0]; $cont=$cont+1; $diasfestivos=strtotime($diasfestivos); // BUQLE FECHAS for($fecha1;$fecha1<=$fecha2;$fecha1=strtotime('+1 day ' . date('Y-m-d',$fecha1))) { if((s ) AND (strcmp(date('D',$fecha1),'Sat')!=0) AND ($fecha1!=$diasfestivos)) { echo "<br>"; echo date('Y-m-d D',$fecha1); echo "<font color=blue>--NO HAY DIAS FESTIVOS NI FINES DE SEMANA</font><br><br>"; echo "<br>"; // FALTA -- INSERT INTO tab_datos VALUES (); } ELSE { echo date('Y-m-d D',$fecha1); echo "--<font color=red>FIN DE SEMANA O FESTIVO:</font><br> "; $Cont2=$Cont2+1; echo "<br>"; echo "<br>"; } } echo "<font color=purple><b><table><tr><td>Dia Festivo </font>:</b> " .$solucion[0]. "/<br>" ; echo "<br>"; } } ?>