get_the_tags - php loop con varias veces al día
tags post wordpress (2)
Acabo de editar el último fragmento de código en función de su estructura de tabla mySQL . NO PROBADO . Pero espero que entiendas la idea:
<?php
$day = null;
echo "<table><thead><tr><th>--</th><th>--</th></tr></thead>";
while($row = $result2->fetch_assoc()) {
if($day != $row["name"]) {
$day = $row["name"];
echo "<tr><td>".$row["name"]."</td><td> ".strstr($row["date"], " ", -1)."</td></tr>";
} else {
echo "<tr><td>".strstr($row["start_at"], " ")."</td><td></td></tr>";
}
}
echo "</table>";
?>
Editar :
Me acabo de dar cuenta de que el tiempo de la base de datos proviene de la fila llamada "start_at". Solucionado el código.
Tengo una tabla mysql que se parece a esto
id date day
1 2016-03-10 15:00:00 monday
2 2016-03-10 16:00:00 monday
3 2016-03-10 17:00:00 monday
4 2016-03-11 15:00:00 tuesday
5 2016-03-11 16:00:00 tuesday
6 2016-03-11 17:00:00 tuesday
7 2016-03-11 18:00:00 tuesday
Y luego estoy usando el siguiente código php para extraer la información de fecha y hora entre ahora y 3 meses
<?php
session_start();
if(isset($_SESSION["userID"])){
$start=date("Y-m-d H:i:s");
echo $stop= date(''Y-m-d H:i:s'', strtotime("+3 months", strtotime($start)));
$result2 = $con->query("select * from event WHERE start_at BETWEEN ''".$start."'' AND ''".$stop."''
ORDER by start_at ASC");
}else{
header(''Location: Login.php'');
}
?>
Y luego en mi cuerpo html he escrito algo como esto
<?php
echo "<table><thead><tr><th>Day</th><th>Time</th></tr></thead>";
// output data of each row
while($row = $result2->fetch_assoc()) {
echo "<tr><td>".$row["name"]."</td><td> ".date(''G:i'', strtotime($row["start_at"]))."</td></tr>";
}
echo "</table>";
?>
Lo cual genera el siguiente resultado
Day Time
Monday 15:00
Monday 16:00
Etcétera. Pero el resultado que quiero es esto
Monday 2016-03-10
15:00
16:00
17:00
Tuesday 2016-03-11
15:00
16:00
17:00
18:00
¿Ideas sobre cómo cambiar mi código para darme el resultado deseado?
Esa es tu necesidad.
<?php
$start=date("Y-m-d H:i:s");
$stop= date(''Y-m-d H:i:s'', strtotime("+3 months", strtotime($start)));
$result2 = $con->query("select * from event WHERE date BETWEEN ''".$start."'' AND ''".$stop."'' ORDER by date ASC");
echo "<table>";
$day = null;
while($row = $result2->fetch_assoc()) {
if($day != $row[''day'']){
$day = $row["day"];
echo "<tr><td>".ucfirst($row[''day''])."</td><td>".date(''Y-m-d'', strtotime($row["date"]))."</td></tr>";
echo "<tr><td colspan=''2''>".date(''G:i'', strtotime($row["date"]))."</td></tr>";
}else{
echo "<tr><td colspan=''2''>".date(''G:i'', strtotime($row["date"]))."</td></tr>";
}
}
echo "</table>";
?>