Tengo que hacer un programa en PHP de control y comparación de fechas que me da problemas
En la aplicación que estoy haciendo tengo que trabajar con fecha, comprobarlas, comparalas con otras.. Etc.Uso la función in_array, para mirar si una fecha esta dentro de ese array donde tengo guardadas otras, y al ejecutar, a veces me funciona, pero si le voy a la página anterior y después vuelvo a esta,, en fin que con los mismos datos a veces me da este erro y a veces m funciona y no se por que, el error es el siguiente:
Hora
0
Warning: in_array(): Wrong datatype for second argument in C:\Archivos de programa\Apache Group\Apache2\htdocs\saci\Cita_CMC1bis2.php on line 276
Y el código es este:
function dividir($fCitaI, $fCitaF, $mat){
$b = count($mat);
$seg10Min = 60 * 10;
$fCitaI = $fCitaI - $seg10Min ;
$fCitaF = $fCitaF - $seg10Min ;
$colum = $_SESSION['columnas'];
$filas = $_SESSION['filas'];
global $matriz;
global $iter;
$matriz= array();
while ($fCitaI<$fCitaF) {
$fCitaI += $seg10Min;
$hora = strftime("%H:%M:%S",$fCitaI);
echo addArray($matriz, $iter, $hora);
$iter +=1;
}//fin WHILE
$tamano =$iter;
?>
<TABLE BORDER ="1" align="center" CELLPADDING="2" CELLSPACING="2">
<TR ALIGN="CENTER" BGCOLOR="YELLOW">
<TD></TD>
<TD>HORA</TD>
</TR>
<?php
for($i=0; $i<$tamano; $i++){
echo "<TR ALIGN='CENTER'>";
echo "<TD BGCOLOR='yellow'>$i</TD>";
//ESTA ES LA LINEA DONDE DA EL ERROR
if (in_array($matriz[$i], $mat)){
echo "ENCONTRO EN EL ARRAY CONSUL:".$matriz[$i];
echo "<TD BGCOLOR='red'>".$matriz[$i]."</TD>";
}//fin if
else{
echo "<TD><a href='Cita_CMC2.php?hr=$matriz[$i]'>".$matriz[$i]."</a></TD>";
}//fin else
echo "</TR>";
}//fin for
?>
</TABLE>
<?php
}//FIN FUNCION DIVIDIR
Espero no haberte liado y haberme explicado. No entiendo porque a veces lo hace bien y a veces da error y estoy un poco estancada en esto.
Hora
0
Warning: in_array(): Wrong datatype for second argument in C:\Archivos de programa\Apache Group\Apache2\htdocs\saci\Cita_CMC1bis2.php on line 276
Y el código es este:
function dividir($fCitaI, $fCitaF, $mat){
$b = count($mat);
$seg10Min = 60 * 10;
$fCitaI = $fCitaI - $seg10Min ;
$fCitaF = $fCitaF - $seg10Min ;
$colum = $_SESSION['columnas'];
$filas = $_SESSION['filas'];
global $matriz;
global $iter;
$matriz= array();
while ($fCitaI<$fCitaF) {
$fCitaI += $seg10Min;
$hora = strftime("%H:%M:%S",$fCitaI);
echo addArray($matriz, $iter, $hora);
$iter +=1;
}//fin WHILE
$tamano =$iter;
?>
<TABLE BORDER ="1" align="center" CELLPADDING="2" CELLSPACING="2">
<TR ALIGN="CENTER" BGCOLOR="YELLOW">
<TD></TD>
<TD>HORA</TD>
</TR>
<?php
for($i=0; $i<$tamano; $i++){
echo "<TR ALIGN='CENTER'>";
echo "<TD BGCOLOR='yellow'>$i</TD>";
//ESTA ES LA LINEA DONDE DA EL ERROR
if (in_array($matriz[$i], $mat)){
echo "ENCONTRO EN EL ARRAY CONSUL:".$matriz[$i];
echo "<TD BGCOLOR='red'>".$matriz[$i]."</TD>";
}//fin if
else{
echo "<TD><a href='Cita_CMC2.php?hr=$matriz[$i]'>".$matriz[$i]."</a></TD>";
}//fin else
echo "</TR>";
}//fin for
?>
</TABLE>
<?php
}//FIN FUNCION DIVIDIR
Espero no haberte liado y haberme explicado. No entiendo porque a veces lo hace bien y a veces da error y estoy un poco estancada en esto.
Respuesta de bubebu
1