Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Kalendarz + wydarzenia
Forum PHP.pl > Forum > PHP
zbig992
Witam winksmiley.jpg

Chciałbym zrobić sobie na stronę kalendarz, w którym będą wyświetlane różne wydarzenia. Dane pobieram z bazy MySQL, problem leży po tej stronie, że spokojnie zrobiłem wyświetlanie jednej imprezy w ciągu jednego dnia, ale nie mogę sobie poradzić ze zrobieniem kilku imprez na jednej dacie. Kod wygląda tak:

pobieranie danych z bazy
  1. $r = mysql_query('SELECT * FROM `events` ORDER BY `data`');
  2.  
  3. while($row = mysql_fetch_assoc($r)) {
  4. $event[$row['data']]['opis'] = $row['opis'];
  5. $event[$row['data']]['nazwa'] = $row['nazwa'];
  6. $event[$row['data']]['miejsce'] = $row['miejsce'];
  7. $event[$row['data']]['godzina'] = $row['godzina'];
  8. }


oraz wyświetlanie:
  1. $thisDay = date("$y-$m-$i");
  2. if (isset($event[$thisDay])) {
  3. echo '<td
  4. class="partyToday"
  5. onmouseout="nd();"
  6. onmouseover="return overlib(\' '.$event[$thisDay]['miejsce']. '<br>' . $event[$thisDay]['opis'] . '<br>Początek imprezy:' . $event[$thisDay]['godzina'] . ' \');">'.$i.'
  7. </td>';
  8. (...)
  9. }


($i to kolejne przejście pętli - pętla idzie tyle razy, ile dni w miesiącu)

wygląda to tak: http://zbig992.info/calendar

No ale z dwoma imprezami w ciągu dnia nie mogę poradzić, nie mam pomysłu. Ma ktoś jakieś rozwiązanie tego problemu, nakierować mnie może na coś?
CuteOne
Nadpisujesz jeden event drugim

zmień to:
  1. while($row = mysql_fetch_assoc($r)) {
  2. $event[$row['data']]['opis'] = $row['opis'];
  3. $event[$row['data']]['nazwa'] = $row['nazwa'];
  4. $event[$row['data']]['miejsce'] = $row['miejsce'];
  5. $event[$row['data']]['godzina'] = $row['godzina'];
  6. }

na to
  1. $k = 0;
  2. while($row = mysql_fetch_assoc($r)) {
  3. $event[$row['data']][$k]['opis'] = $row['opis'];
  4. $event[$row['data']][$k]['nazwa'] = $row['nazwa'];
  5. $event[$row['data']][$k]['miejsce'] = $row['miejsce'];
  6. $event[$row['data']][$k]['godzina'] = $row['godzina'];
  7. $k++;
  8. }

przy wyświetlaniu już sobie chyba poradzisz? smile.gif

ps. znam skądś Twój nick... nie grasz czasem w Red Dragona?


EDIT: a na gamecenter.pl nie masz konta? tongue.gif
zbig992
Chyba jednak nie tongue.gif Chociaż możliwe, że kiedyś z nudów założyłem konto tongue.gif

Co do kodu - zaraz przetestuję winksmiley.jpg Jak będę miał problemy - będę odpisywał smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.