Hola, que cosa más rara, tu solución Josemi chutaba de maravilla con la fecha "2003-12-30" cual ha sido mi sorpresa al cambiar el valor por el de $fecha y y veo que al darle otros valores me da siempre un mismo errorl ¿? Me da el error y más abajo me muestra el resultado correcto no se exactamente lo que pasa el error dice:
Warning: Invalid argument supplied for foreach() in C:\GMMD\Apache\Apache2\htdocs\pec1\procesa_reserva me_ya.php on line 38
La línea 38 corresponde a: (la pongo comentada) y pego el código de la página entera por si "se arrastra" algún error.
Por cierto jpinedo los array ahora son de la misma dimendión y he intentado solucionarlo con array_diff y no hay manera
Código PHP:
<?
require 'auth.php';
require_once 'bd.php';
require 'reserva.php';
comprueba_autenticacion();
$aparcamiento = $_POST["aparcamiento"];
$fecha = $_POST["fecha"];
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
// MUESTRA TODOS LOS COCHES EN UN DETERMINADO APARCAMIENTO
open();
$query = "SELECT coches.matricula FROM coches WHERE (aparcamiento = '$aparcamiento')";
$result = mysql_query($query) or die(mysql_error());
while($vehiculo = mysql_fetch_array($result))
$vehiculos[]=$vehiculo;
// TODOS LOS COCHES EN UN DETERMINADO APARCAMIENTO Y FECHA
open();
$query = "SELECT reserva.matricula FROM coches INNER JOIN reserva ON
(coches.matricula = reserva.matricula) WHERE (fecha = '$fecha') AND (aparcamiento = '$aparcamiento')";
$result = mysql_query($query) or die(mysql_error());
while($vehiculo2 = mysql_fetch_array($result))
$vehiculos2[]=$vehiculo2;
// Código de Josemi
$resultado=array();
foreach ($vehiculos as $vehiculo) {
$esta=false;
foreach ($vehiculos2 as $vehiculo2) { //Josemi esta es la línea 38 donde dice que está el error¿?
if ($vehiculo['matricula']==$vehiculo2['matricula']) {
$esta=true;
break;
}
}
if (!$esta) $resultado[]=$vehiculo;
}
?>
<p>Estos son los vehículos disponibles para en la fecha <b>
<?=$fecha?></b> y el aparcamiento nº <b>
<?=$aparcamiento?>
</b></p>
<table border=1 cellspacing=0 cellpadding=4>
<tr>
<td>Matricula</td>
<td> </td>
</tr>
<? foreach ($resultado as $resultado2) { ?>
<tr>
<td><?=$resultado2['matricula']?></td>
<td><a href="reserva_ya_ok.php?fecha=<? echo $fecha?>&matricula=<?=$resultado2['matricula']?>">Reservar</a></td>
</tr>
<? }?>
</table>
<p>En total hay <b><?=count($resultado); ?></b>
vehículo(s) disponible(s).</p>
</body>
</html>