Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Wyświetlenie kategorii które nie są puste
Forum PHP.pl > Forum > Przedszkole
nitro11
W bazie w tabeli 'cats' mam zapisane kategorie w formacie: id,name.

Wyświetlam na stronie wszystkie kategorie filmików z bd:

  1. <?
  2.  
  3. $Query='SELECT * FROM cats ORDER BY name ASC';
  4. $result = mysql_query($Query) or die (mysql_error());
  5. while ( $row = mysql_fetch_array($result))
  6. {
  7.  
  8. $row["name"] = iconv('iso-8859-2','utf-8',$row["name"]);
  9. echo'<li><a href="kategoria,'.$row["id"].',0,'.$row["name"].'.html" class="item11">'.$row["name"].'</a></li>';
  10.  
  11. }
  12.  
  13. ?>


Problem jest taki, że nie chciałbym żeby były wyświetlane kategorie, które są puste, czyli do których nie należy żaden filmik.
W tabeli 'filmiki' mam kolumnę 'category', która identyfikuje kategorie do jakiej należy dany filmik.

Jak na tej podstawie zmodyfikować mój kod php, tak żeby wyświetlał tylko kategorie do których przynależy minimum 1 filmik ?
krispak
Np tak:
  1. $Query = 'SELECT c.* FROM cats as c LEFT JOIN filmiki as f ON (c.id=f.category) WHERE c.id = f.Category GROUP BY c.id ORDER BY name ASC';
nitro11
Wygląda obiecująco, niestety po zapytaniu:
  1. $Query = 'SELECT c.* FROM cats as c LEFT JOIN filmiki as f ON (c.id=f.category) WHERE c.id = f.Category GROUB BY c.id ORDER BY name ASC';

dostaje błąd:
  1. Something is wrong in your syntax obok 'GROUB BY c.id ORDER BY name ASC' w linii 1
wookieb
GROUP
krispak
Byla literowka w GROUP (GROUB) poprawilem wczesniej ale szybciej skopiowales tongue.gif
nitro11
Jakiejś chyba ślepoty dostałem, że tego nie zauważyłem a tyle razy analizowałem.
Działa przepięknie, tylko szkoda że absolutnie nie umiałbym napisać czegoś takiego sam, ehh winksmiley.jpg
Dziękuje za pomoc!
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.