![]() |
![]() |
![]()
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: 67 Pomógł: 0 Dołączył: 5.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zapomnialem jeszcze napisac struktury bazy: [sql:1:6cb6ac4e8d] - dzId - id kategorii - dzIdBoss - id kategorii rodzica] - dzNazwa - nazwa kategorii [/sql:1:6cb6ac4e8d] I jeszcze nie moge sobei poradzic z wysietleniem drzewka w polu typu select: w taki sposob: Kod - Kategoria 1
- Podkategoria 1 - Podkategoria 1.1 -Kategoria 2 - Podkategoria 1 - Podkategoria 2 itp Ponizej zamieszczam kod jakim wyswietlam cale drzewko. Lecz nie moge sobie poradzic z SELECTEM. [php:1:6cb6ac4e8d]<?php for($i=0; $i<count($struktura); $i++) { $nr=$i+1; for($j=0; $j<count($struktura[$i]); $j++) { $margines=10*$struktura[$i][$j]['level']; echo "<table width="100%" ><tr><td width= "".$margines.""></td> <td><li style="margin-left: 10px;"> <ahref="index.php?id=".$struktura[$i][$j]['id']."&a=ed">".$struktura[$i][$j]['nazwa']."</a>"; if($struktura[$i][$j+1]['level'] > $struktura[$i][$j]['level']) { print'</td>'; } else { print'</td>'; } if($struktura[$i][$j+1]['level'] < $struktura[$i][$j]['level']) for($k=0; $k<$struktura[$i][$j]['level']-$struktura[$i][$j+1]['level']; $k++)echo "</td></tr></table>"; } } ?>[/php:1:6cb6ac4e8d] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 20:58 |