

(ASP) Aynı Tabloyu Açma / Sınırsız Kategorilemede Yolu Yazdırma
-
Merhaba. dünden beri kafayı yedim, bir türlü bulamadım lazım olan kodu.
bir alışveriş sistemi yazıyorum.sınırsız kategorileme yaptım.ancak ürün düzenleme bölümünde bir select box koyuyorum.her seçenekte kategoriyi yazsın istiyorum.
Tablom
id | ust_kat | katadi
1........0..........GenelKat1
2........0..........GenelKat2
3........1..........GenelKat1_AltKat1
4........2..........GenelKat2_AltKat1
.
.
.
bu yapıda gidiyor tablo.KAtegorinin dahil olduğu kısmın id'si ustkat sütununda yer alıyor. üstkat 0 olursa en üst kategoride olduğuğumuzu anlıyor. Küçük birde fonksiyon yazdım ki yolbul(x) yazdığımda o kategorinin yolunu yazsın:
function yolbul(katno)
m = katno
yol = ""
do While not m = 0
set kategori = Connection.Execute("SELECT * FROM kategoriler where id=" & m)
katadim = kategori("katadi")
m = kategori("ustkat")
yol = katadim & "->" & yol
loop
yolbul = yol
end function-------------------------------
Formda select box'a yolu ile yazdırmaya çalışıyorum.fakat daha fazla tablo açılamıyor diyo. çünkü hem tablo idlerini alıyorum sırayla hemde aynı tablodan tekrar yolu yazdırmaya çalışıyorum.
<select name="iki" size="1" class="form1">
<%
set kat = server.createobject("adodb.recordset")
sqlkat = "SELECT * FROM kategoriler"
kat.open sqlkat,Connection,1,3
Do Until kat.EoF
%>
<option value="<%=kat("id")%>"><%=yolbul(kat("id"))%></option>
<%
kat.movenext
loop
%>
</select>
------------------------------------Bunu bir çözümü varmıdır? Buna benzer bir sistem yapan oldu mu daha önce?
-
tamam benim hatammış
tabloya
kendi kendinin alt kategorisi olan bişi eklemişim.döngüye giriyomuş. kodlar sorunsuz çalışıyor.