![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 176 Pomógł: 0 Dołączył: 27.06.2002 Skąd: Stalowa Wola Ostrzeżenie: (0%) ![]() ![]() |
Baza danych sklada sie z 3 tabel:
op_cat - idCat, naz_c - w tej tabeli beda zapisane nazwy kategorii i id kategorii op_subcat - idScat, naz_sc (nazwy podkategorii), cat (nr kategorii odnoszacy sie do 1 tabeli) op_mecze - id, data, scat (nr podkategorii powiazany z 2 tabela), ile, mecz, opis Mój problem polega na tym, ze: - chce zliczyc rekordy wchodzące w sklad danej kategorii i wyswielic liczbe tych rekordow obok nazwy wszystkich kategorii (chodzi o plik category.lib). - chce zliczyc rekordy wchodzące w sklad danej podkategorii i wyświetlić je z boku obok nazw podkategorii (chodzi o ziane pliku subcategory.lib) - i jak obok nazwy podkategorii (a pod nia sa wymienione mecze wchodzące w jej sklad) wyswielic jeszcze nazwe kategorii głównej (chodzi o plik mecze.lib) Proszę o pomoc. Z gory wielkie dzieki. Poniżej pliki. Kod config.cfg
Kod: <? ###### MySQL ######### mysql_pconnect("localhost","xx","xx") or die ("Connection FAILED"); mysql_select_db("op") or die ("DB select FAILED"); ####### DIR's ######### $LIB_DIR = "lib/"; ############# # GLOBALS # ############# $VARS = $_GET ? $_GET : $_POST; $CAT = $VARS["c"]; $SCAT = $VARS["s"]; $MECZE = $VARS["fid"]; ?> Index.php Kod: <? include("cfg/config.cfg"); if($CAT) { require($LIB_DIR."subcategory.lib"); } elseif($SCAT) { require($LIB_DIR."mecze.lib"); } elseif($MECZE) { require($LIB_DIR."opisy.lib"); } else { require($LIB_DIR."category.lib"); } ?> category.lib Kod: <? $select = "SELECT idCat,naz_c FROM op_cat WHERE 1"; $query = mysql_query($select); print"<TABLE border=0>"; while($r = mysql_fetch_object($query)) { echo '<tr><td><a href="?c='.$r->idCat.'&n='.$r->naz_c.'" onFocus="blur()">'.$r->naz_c.'</a></td><tr>'; } print"</TABLE>"; ?> subcategory.lib Kod: <? if($CAT == "") { echo "Nie wybrano sezonu"; } echo '<table border=0>'; $select = "SELECT idScat,naz_sc FROM op_subcat WHERE cat=$CAT"; $query = mysql_query($select); echo '<tr><td><B>'.$VARS["n"].'</B></td></tr>'; while($r = mysql_fetch_object($query)) { echo '<tr><td><a href="?s='.$r->idScat.'&n='.$r->naz_sc.'" onFocus="blur()">'.$r->naz_sc.'</a></td><tr>'; } print"</TABLE>"; ?> mecze.lib Kod: <? if($SCAT == "") { echo "Nie wybrano sezonu"; } echo '<table border=0>'; $select = "SELECT id, mecz FROM op_mecze WHERE scat=$SCAT"; $query = mysql_query($select); echo '<tr><td><B> '.$VARS["n"].' </B></td></tr>'; while($r = mysql_fetch_object($query)) { echo '<tr><td><a href="?fid='.$r->id.'&n='.$r->mecz.'" onFocus="blur()">'.$r->mecz.'</a></td><tr>'; } print"</TABLE>"; ?> opisy.lib Kod: <? $select = "SELECT opis, data, ile FROM op_mecze WHERE id=$MECZE LIMIT 1"; $query = mysql_query($select); $r = mysql_fetch_object($query); print' <tr>'; print'<p align="center">'.$VARS["n"].' '.$r->data.'</td>'; print' <td width="100%" colspan="2" >'.$r->opis.'</td>'; ?> |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 398 Pomógł: 0 Dołączył: -- Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Wszelkie tego typu zliczenia robisz zapytaniem agregującym, np:
Kod SELECT op_cat.naz_c AS kategoria, COUNT(*) AS ile_podkategorii FROM op_cat, op_subcat WHERE op_subcat.cat=op_cat.idCat GROUP BY op_subcat.cat Powinno (o ile się gdzieś nie walnąłem) Ci wyrzucić listę kategorii wraz z ilością podkategorii przy każdej z nich. Analogicznie w pozostałych przypadkach. Pokombinuj samodzielnie.
-------------------- cease this long, long rest / wake and risk a foul weakness to live / when it all comes down / watch the smoke and bury the past again / sit and think what will come / raise your fears and cast them all away
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 176 Pomógł: 0 Dołączył: 27.06.2002 Skąd: Stalowa Wola Ostrzeżenie: (0%) ![]() ![]() |
Zmienilem kod pliku category.lib na ponizszy i wyswietla mi liczbe podaktegorii ale nie w tym miejscu co bym chcial (chodzi mi o to aby wyswietlic w miejscu gdzie w kodzie jest: xxxxxxxxxxxxx.
A moze ktos pomoze mi w tym aby zrobic tak ze w pliku category.lib abu obok wyswietonej nazwy kategorii nie tyle wyswietlilo mi licze podkategorii ale liczbe rekordow wchodzacych w sklad dane zarowno kategorii jak i podkategorii. Kod <HTML> [/code]
<body bgcolor="#EFEFEF"> <? $zapytanie1 = "SELECT op_cat.naz_c AS cat, COUNT(*) AS ile_podkategorii FROM op_cat, op_subcat WHERE op_subcat.cat=op_cat.idCat GROUP BY op_subcat.cat"; $query = mysql_query($zapytanie1); while($row = mysql_fetch_array($query)) { $ile_podkategorii = $row['ile_podkategorii']; echo "t <td width=295>$ile_podkategorii</td>n"; } mysql_free_result($wykonaj); $select = "SELECT idCat,naz_c FROM op_cat WHERE 1"; $query = mysql_query($select); print"<TABLE border=0>"; while($r = mysql_fetch_object($query)) { echo '<tr><td><a href="index.php?c='.$r->idCat.'&n='.$r->naz_c.'" onFocus="blur()">'.$r->naz_c.'</a><xxxxxxxxxxxxxx></td><tr>'; } print"</TABLE>"; ?> </HTML> |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 23.06.2025 - 05:33 |