Autor | Zpráva | ||
---|---|---|---|
Getty Profil * |
#1 · Zasláno: 15. 3. 2017, 20:19:45
Ahoj,
zasekl jsem se u výběru dotazu z databáze. Mám stránku, kde vypisuji rezervace vždy po týdnu a potřebuji tam přidat opakované rezervace, takže mám následující tabulku rezervation_repeatedly, sloupce: id, date_from, date_to, day, time_from, time_to, kde si do pole ukládám hodnoty o rezervaci vždy pro daný den (pondělí, úterý, středa, ...): $week_start = '2017-03-20'; $week_end = '2017-03-26'; $sql = mysqli_query($db, " select * from rezervation_repeatedly order by id asc"); while($v = mysqli_fetch_array($sql)){ $plus_date = ($v['day']-1); // VE SLOUPCI DAY UKLÁDÁM 1-PONDĚLÍ, 2-ÚTERÝ, ... $date = date('Y-m-d', strtotime($aktualni_tyden[0] .' +'.$plus_date.' day')); //$aktualni_tyden[0] - ZDE JE VŽDY ULOŽENA HODNOTA PRVNÍHO DNE ZVOLENÉHO TÝDNE for ($i = $v['time_from']; $i <= $v['time_to']; $i++) { $rezervace[$date][$i] = 1; } } A já bych potřeboval vždy vypsat jen ty záznamy, které se nacházejí v daném týdnu, tzn. zakomponovat zde i podmínky pro time_from a time_to, ve spojitosti s proměnnými $week_start a $week_end. Díky za rady. |
||
Kajman Profil |
#2 · Zasláno: 16. 3. 2017, 11:05:36
Pokud v té tabulce jsou date_from a date_to datumy odpovídající day, tak by mělo stačit upravit dotaz...
select * from rezervation_repeatedly where date_from <= '$week_end' and date_to >= '$week_start' order by id asc Pokud v date_to bude např. pondělí akutálního týdne, ale day bude třeba až pátek, tak to dotaz vrátí také. V takovém případě je potřeba přidat ještě filtraci v php, kde si porovnáte vypočtené $date, zda je stále v intervalu události. if($date>=$v['date_from'] && $date<=$v['date_to']) { for cyklus s time } |
||
Časová prodleva: 8 let
|
0