Al final no funcionaba y he tenido que cambiar los queries mucho,
he conseguido hacer funcionar los primeros ifs,
pero despues el else no se ejecuta para nada.
He puesto el else en una pagina aparte y solo funciona,
asi que pues ya ni idea.
Esta primera parte funciona:
Código PHP:
if (!empty($_SESSION['reservas']['paso1']['percentage']) && !empty($_SESSION['reservas']['paso1']['terms'])) {
if ($salida > $llegada){
//esto imprime:<br>
echo "test";
do{
while }
}
Y ahora lo tengo asi y funciona:
Código PHP:
//miramos si disponible
$consulta ="SELECT DATE_FORMAT(llegada, '%e %b %Y') as lleg, DATE_FORMAT(salida, '%e %b %Y') as sal,tiporeserva, propiedad, TO_DAYS('$salida') - TO_DAYS('$llegada') as dias from bookings where ( propiedad = '$propiedad' )
AND (('$llegada' BETWEEN llegada AND date_sub(salida, interval +1 day))
or ('$salida' BETWEEN date_sub(llegada, interval -1 day) AND salida) or (llegada <= '$llegada' AND salida >= '$salida') or (llegada >= '$llegada' AND salida <= '$salida'))";
if ($resultado = $dbh->query($consulta)) {
while ($row = $resultado->fetch_object()) {
if ($row->tiporeserva=="larga"){ echo "<p>This property is available only for long term rentals, consult us for a price.</p>
"; }
else {
$propiedad = str_replace("_", " ", $propiedad);
echo "<p>$propiedad is not available from $arrival_display to $departure_display.</p>";
echo "<p>$propiedad is occupied from ". $row->lleg ." until ". $row->sal ."</p>";
}
} //end while
}//fin mirar si disponible
Código PHP:
else {
//esto no imprime:
echo "test";
$sql = "SELECT llegada, salida, propiedad, TO_DAYS('$salida') - TO_DAYS('$llegada') as dias from bookings where ( propiedad = '$propiedad' ) AND ((llegada = '$salida') OR (salida = '$llegada'))";
if ($resultado = $dbh->query($sql)) {
while ($rows = $resultado->fetch_assoc()){
//esto no imprime
echo "test";
$dias=$rows['dias'];
$llegadabase=$rows['llegada'];
$salidabase=$rows['salida'];
}
}
if ($salida==$llegadabase)
{