Ciao ragazzi,
da qualche giorno a questa parte mi trovo alle prese con la gestione di categorie infinite.
Tramite una funzione ricorsiva riesco a stampare padri - figli - contenuti che attraverso l'implementazione di un tree in jquery riesco a far visualizzare in modo dinamico e fluido.
Inizialmente ho questa situazione:
Visualizzazione semplice iniziale file ASP
Codice PHP:
<ul id="example" class="filetree">
<%
............QUERY......
Set rs = conn.Execute(sql)
Do While rs.eof = false
arr(co,0)=rs("cat_id")
arr(co,1)=rs("cat_name")
arr(co,2)=rs("cat_parent_id")
arr(co,3)=rs("tot_subcat")
arr(co,4)=rs("id_contenuto")
arr(co,5)=rs("titolo_contenuto")
arr(co,6)=rs("contenuto")
co=co+1
rs.Movenext
loop
rs.close
set rs=Nothing
call Stampafigli ("-1",0)
Sub Stampafigli ( idpadre, livello)
dim rip
for rip = 0 to ubound (arr,1)
if cint ( arr(rip,2) ) = cint (idpadre) then
%>
<li class="closed"><span class="folder"><%=arr(rip,1)%></span>
<ul>
<li class="closed"><span class="folder"><%=arr(rip,1)%></span>
<ul>
[*]<span class="file"></span>
[/list]
[/list]
<%
End If
Next
End Sub
%>
[/list]
Output semplice

Uploaded with ImageShack.us
Quando vado ad effettuare la sub "stampafigli" arrivano i problemi di visualizzazione, cioè quando viene inserita i tag si raddoppiano e vengono chiusi male.... Esempio
Codice PHP:
<li class="closed"><span class="folder"><%=arr(rip,1)%></span>
<ul>
<li class="closed"><span class="file"><%call Stampafigli ( cint(arr(rip,0)) ,livello+1)%><%=arr(rip,5)%></span>
[/list]
Vista html
Codice PHP:
<ul id="example" class="filetree">
<li class="closed"><span class="folder">Hardware</span>
<ul>
<li class="closed"><span class="file"></span>
[/list]
<li class="closed"><span class="folder">Software</span>
<ul>
<li class="closed"><span class="file"></span>
[/list]
<li class="closed"><span class="folder">Console</span>
<ul>
<li class="closed"><span class="file">
<li class="closed"><span class="folder">Microsoft</span>
<ul>
<li class="closed"><span class="file">XBOX-360</span>
[/list]
<li class="closed"><span class="folder">Sony</span>
<ul>
<li class="closed"><span class="file">Playstation-3</span>
[/list]
</span>
[/list]
[/list]

Uploaded with ImageShack.us
Non riesco a capire perchè la sub mi raddoppia tutto scatenando errori nell'output, qualcuno di voi può aiutarmi a capire meglio in merito a dove inserire la call per poter personalizzare qualsiasi visualizzazione a tree mi farebbe un favorone..
Spero di essere stato chiaro (anche se capisco che può rimanere un pò contorto è più facile a vedersi che spiegarsi
)