Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Kalendarz + wydarzenia
zbig992
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 3
Dołączył: 21.01.2010

Ostrzeżenie: (0%)
-----


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ś?
Go to the top of the page
+Quote Post
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

Ostrzeżenie: (0%)
-----


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

Ten post edytował CuteOne 22.10.2010, 13:02:30
Go to the top of the page
+Quote Post
zbig992
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 3
Dołączył: 21.01.2010

Ostrzeżenie: (0%)
-----


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
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 23:23