Salut!
Doresc sa realizez un catalog ce poate contine un numar oarecare de categorii, care la randul lor pot contine un numar oarecare de subcategorii si asa mai departe.
Imi poate spune cineva care ar fi metoda optima de abordare a acestui lucru? Fiecare categorie are salvata in baza de date intr-un camp valoarea categoriei-parinte. Totusi am ceva dificultati in a construi propriu zis arborele cu datele din baza de date.
Va multumesc!
Catalog pe mai multe nivele in php/mysql
Moderatori: Zamolxe, Moderatori
- mihaitha
- Senior Member
- Mesaje: 2383
- Membru din: Vin Mai 04, 2007 12:40 pm
- Localitate: Sibiu
- Contact:
parsarea o faci recursiv. Eu unul cand fac asa ceva, categoriile de baza (level 1) le pun cu parent_id null. Functia o faci de genul asta:
[php]
<?php
mysql_connect(); //etc etc.
function parse_categories($id_parent) {
$comparare = ($id_parent == null) ? 'IS NULL' : '= ' . $id_parent;
$q = mysql_query('SELECT * FROM categorii WHERE parent_id ' . $comparare);
while ($r = mysql_fetch_object($q)) {
echo 'afiseaza categoria'; // afisezi cum vrei aici
parse_categories($r->id);
}
}
parse_categories(null);
?>
[/php]
spor la lucru.
[php]
<?php
mysql_connect(); //etc etc.
function parse_categories($id_parent) {
$comparare = ($id_parent == null) ? 'IS NULL' : '= ' . $id_parent;
$q = mysql_query('SELECT * FROM categorii WHERE parent_id ' . $comparare);
while ($r = mysql_fetch_object($q)) {
echo 'afiseaza categoria'; // afisezi cum vrei aici
parse_categories($r->id);
}
}
parse_categories(null);
?>
[/php]
spor la lucru.
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 15 vizitatori