![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 67 Pomógł: 0 Dołączył: 5.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam funkcje do obslugi drzewka kategorii - jednak nie wiem jak zorbic aleby zliczana i wysietlana byla liczba produktow nalezacych do danej kategorii (oczywiscie baza sklada sie z 2 tabel: DZIALY, PRODUKTY). Prosze o pomoc Oto funkcje: [php:1:29b8958155]<?php function getBoss($id, $dane, &$index, &$boss, &$validate, &$error) { if($dane[$id]['boss']){ if($validate[$id]){ $error=SLW_Blad26; return; } else { $validate[$id]=true; $boss[$index]['id']=$dane[$id]['boss']; $boss[$index]['nazwa']=$dane[$dane[$id]['boss']]['nazwa']; $index++; getBoss($dane[$id]['boss'], $dane, $index, $boss, $validate, $error); } } } function getDzialy($idBoss) { $sql="select dzId, dzNazwa from dzialy where dzIdBoss='$idBoss' order by dzKolejnosc"; $res=mysql_query($sql); $index=0; while($row=mysql_fetch_array($res)){ $dane[$index]['id']=$row["dzId"]; $dane[$index]['nazwa']=str_replace(' ', ' ', $row["dzNazwa"]); $index++; } return $dane; } ?>[/php:1:29b8958155] A w taki sposob wysietlam kategorie: [php:1:29b8958155]<?php <? $cnt=mysql_connect("localhost", "xx", "xx"); mysql_select_db("xx", $cnt) or die ("Nie można poł±czyć się z MySQL'em!"); $dzId=$_GET['id']; $dzialy=getDzialy($dzId); for($i=0; $i<count($dzialy); $i++){ ?> <a href="dzial.php?id=<? echo $dzialy[$i]['id']; ?>"><b><? echo $dzialy[$i]['nazwa']; ?></b></a></div> <? } ?> ?>[/php:1:29b8958155] |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 85 Pomógł: 0 Dołączył: 2.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chodzilo mi o troche cos innego - nie zliczanie tylko produktow w danej kategorii - tylko : aby zliczyc wszytkie produkty takze w kategoriach nizszych (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
A nie wiem jak wlasnie to zrobic. A jak masz zrobione to drzewko. Które to są kategorie niższe - gdzie jest przechowywana ta informacja? Musimy skądś wiedzieć, które podkategorie należą do danej kategorii. Jak to podasz to zrobi się odpowiednie zapytanie. @nasto Unikamy liczenia wierszy w php - czyli funkcją mysql_num_rows, a liczymy je już w zapytaniu do bazy danych, czyli countem. W ten sposób php dostaje w wyniku jedną liczbę, a nie całą zawartość tabeli. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 10:37 |