PHP - Agenda semanal. muestra por defecto si vacio

   
Vista:

Agenda semanal. muestra por defecto si vacio

Publicado por Strol (1 intervención) el 05/01/2016 15:27:39
Buenas.

Tengo una agenda, que recoge los datos de un DB mysql, solo muestro los proximos 7 dias.

Esto esta montado con un WHILE y lo manda a una lista.

El dia de la semana lo recoge el propio php, no esta en la DB

1 dia puede tener 1 vento o más, pero puede que un dia no tenga ninguno declarado en la DB, entonces quiero que muestre uno por defecto.

A mi lo unico que se me ocurre es hacer una consulta por dia y repetirla 7 veces, pero no se si es la mejor opción...

a ver si alguien se le ocurre algo y me echa un cable.

Gracias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?
 
//recojo fecha y hora del servidor
$time = time();
//le doy forma y la paso a una variable
$fechahoy = date("Y-m-d", $time);
$hoyfecha = date("Y-m-d (H:i:s)", $time);
//declaro variable para calcular 7 dias a partir de hoy
$fecha7 = strtotime ( '+7 day' , strtotime ( $fechahoy ) ) ;
$fecha7 = date ( 'Y-m-j' , $fecha7 );
 
//Invoco archivo para calcular el dia de la setmana 	
include ('diasemana.php');
	$link=Conectarse();
		$query = "SELECT *  FROM calendario WHERE fecha>='$fechahoy' AND fecha<'$fecha7' ORDER BY fecha";
$result = mysqli_query ($link,$query);
 
 
$contador = 0;
while ($row = mysqli_fetch_array($result)) {
$titulo = $row[titulo];
$id= $row[id];
$ref = $row[ref];
$fecha = $row[fecha];
$descripcion = $row['descripcion'];
$image = $row['image'];
 
// ejecutamos la función de dia de la setmana pasandole la fecha 
saber_dia($fecha); //la variable $diasemana se declarara en la función como  global
 
if($fechahoy<=$fecha){$semanadia=$diasemana;}else{$semanadia="esta noche";}
 
	?>
	<li>
	<div class="padding">
		<h3><? echo $titulo ?></h3>
		<h4><? echo $semanadia ."&nbsp;". $fecha ?></h4>
		<img src="<? echo $image ?>" />
		<span class="text175"><p><? echo $descripcion ?></p></span>
	</div>
	</li>
 
 
 
	<?
 
;}
	mysqli_close ($link);
?>

El archivo de dia semana

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
 
function saber_dia($nombredia) {
 
$dias = array('Domingo','Lunes','Martes','Miercoles','Jueves','Viernes','Sabado');
 
global $diasemana;
$diasemana = $dias[date('N', strtotime($nombredia))];
 
 
}
 
 
 
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder