Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Pętla w pętli
Forum PHP.pl > Forum > Przedszkole
d0m1n1k_
Witam,
staram się zbudować relację między tablicami w MySQL, jednak nie wiem dlaczego, ale nie wychodzi.

Oto co mam:

Tablice (kolumny):
matches (id_matches; id_user; id_category; title; added_data; matches_startd; matches_starth; head_description; main_description),
matches_categories (id_category; matches_name; icon),
links (id_link; id_matches; id_user; id_linkgroup; link_name; hyperlink; added_data; score; votes),
rating (id_rating; id_matches; id_info; like; unlike)

Chciałbym z nich wyświetlić dane zaznaczone pogrubieniem w kolejności od najstarszego (data bliska chwili obecnej) do najnowszego (do końca dnia).
Instrukcja którą wymodziłem wygląda następująco:
  1. $meczedzis1 = mysql_query("SELECT * FROM matches WHERE matches_startd = CURDATE()");
  2.  
  3. while ($meczedzis2 = mysql_fetch_array($meczedzis1)) {
  4. $dzisspot_tytul = $meczedzis2['title'];
  5. $dzisspot_data = $meczedzis2['matches_startd'];
  6. $dzisspot_godzina = $meczedzis2['matches_starth'];
  7.  
  8. $meczedzis3 = mysql_query("SELECT * FROM matches_categories, links, rating WHERE matches.id_category=matches_categories.id_category AND matches.id_matches=rating.id_matches");
  9.  
  10. while ($meczedzis4 = mysql_fetch_array($meczedzis3)) {
  11. $dzisspot_ikona = $meczedzis4['icon'];
  12. $dzisspot_like = $meczedzis4['unlike'];
  13. $dzisspot_unlike = $meczedzis4['count'];
  14. }
  15.  
  16. echo "$dzisspot_unlike<br/>
  17. $dzisspot_like<br/>
  18. $dzisspot_standard<br/>
  19. $dzisspot_premium<br/>
  20. $dzisspot_ikona<br/>
  21. $dzisspot_godzina<br/>
  22. $dzisspot_data<br/>
  23. $dzisspot_tytul";
  24. }


I w takiej formie wyświetla mi jedynie title, matches_startd, matches_starth.
Gdy tworzyłem jedno zapytanie na pętli while (pobieranie z wszystkich tabel na raz) powielało mi po kilka razy lub w ogóle nie działało.
Czy może ktoś mi w tym pomóc?
Z góry dziękuję za pomoc.
timon27
Jeśli nie masz nagłówków między meczami (a w kodzie który podałeś nie masz) to możesz to zrobić prościej: jednym zapytaniem za pomocą JOIN
d0m1n1k_
Dzięki - podziałało 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.