Merhabalar ,

Normal olarak kategori listeleme vs yapabiliyorum ürünlerimi listelerken velakin sistemi biraz daha değiştirip kategorinin birde alt kategorisini yapmam gerekiyor sorunda burada başlıyor.

Bunu çözebilmek için tam olarak nasıl bir yol izlemeliyim gerek yönetim paneli konusunda gerekse kullanıcı arayüzü konusunda gereksede veritabanı konusunda ...

Kategoriletme Örneğim

<%
Set rs = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "select * from urunler where kategori=" & request.QueryString("id") & " order by id desc"
rs.open rSQL,Connection,3,3
ya=1
al=1
for al=1 to 1000
if rs.eof then exit for
%>
                              <td width="110" height="100" align="center"><table border="0" width="100%">
                                <tr>
                                  <td><strong><a href="urundetay.asp?id=<%=rs("id")%>"><%=rs("isim")%></a></strong></td>
                                </tr>
                                <tr>
                                  <td><a href="urundetay.asp?id=<%=rs("id")%>"><img src="<%=rs("resim")%>" alt="<%=rs("resim")%>" width="248" height="153" border="0"></a></td>
                                </tr>
                              </table></td>
                              <%
rs.movenext
ya=ya+1
if ya=3 then
ya=1
%>
                            </tr>
                            <tr>
                              <%
end if
next
rs.close
%>
                            </tr>
                          </table>
Buradaki de Yönetim Panelindeki Ürünler ve Kategori Ekleme vs Ayarlarım

 
<table align="center" border="0" cellpadding="0" cellspacing="0" width="820">
  <tbody>
    <tr>
      <td bgcolor="#ffffff" height="13"><!--#include file="ust.asp"-->
        <table align="center" border="0" cellpadding="0" cellspacing="0" width="860">
          <tbody>
            <tr>
              <td bgcolor="#ffffff" height="269" valign="top" width="267"><table width="100%"  border="0">
                <tr>
                  <td><table width="100%" border="0">
                    <tr>
                      <td width="18" height="13" align="center" valign="middle"><strong>&nbsp;&raquo;</strong></td>
                      <td width="158" align="left" valign="middle"><a href="urunler.asp?islem=urunekle"><strong>&Uuml;r&uuml;n Ekle</strong></a></td>
                      <td width="12" align="left" valign="middle"></td>
                    </tr>
                    <tr>
                      <td width="18" height="13" align="center" valign="middle"><strong>&nbsp;&raquo;</strong></td>
                      <td width="158" align="left" valign="middle"><a href="urunler.asp?islem=urunkatekle"><strong>&Uuml;r&uuml;n Kategori Ekle</strong></a></td>
                      <td width="12" align="left" valign="middle"></td>
                    </tr>
                  </table></td>
                </tr>
                <tr>
                  <td><hr></td>
                </tr>
              </table>
                <br>
                <!--#include file="sol.asp"--></td>
              <td background="img/ara_bg.jpg" bgcolor="#ffffff" width="5">&nbsp;</td>
              <td bgcolor="#ffffff" valign="top" width="550"><table align="center" border="0" cellpadding="0" cellspacing="0" width="100%">
                <tbody>
                  <tr>
                    <td><%
if request.QueryString("islem")="urunsil" then
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Delete FROM urunler WHERE id=" & (request.QueryString("ID"))
rec.open rSQL,Connection,3,3
end if
%>
                      <%
if request.QueryString("islem")="urunkategorisil" then
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Delete FROM urunkategoriler WHERE id=" & (request.QueryString("ID"))
rec.open rSQL,Connection,3,3
end if
%>
                      <%
if request.QueryString("islem")="urun2" and request.Form("isim")<>"" then
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunler Where id=" & request.QueryString("id")
rec.open rSQL,Connection,3,3
rec("isim")=request.Form("isim")
rec("fiyat")=request.Form("fiyat")
rec("aciklama")=request.Form("aciklama")
rec("resim")=request.Form("resim")
rec("kategori")=request.Form("kategori")
rec.update
durum="&Uuml;r&uuml;n Başarılı Bir Şekilde D&uuml;zenlendi."
response.Redirect("urunler.asp")
end if
if request.QueryString("islem")="urun" then
%>
                      <form method="post" action="urunler.asp?islem=urun2&id=<%=request.QueryString("id")%>">
                        <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunler Where id=" & request.QueryString("id")
rec.open rSQL,Connection,3,3
%>
                        <table border="0" width="100%">
                          <tr>
                            <td align="left">&Uuml;r&uuml;n Başlığı:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" value="<%=rec("isim")%>" name="isim" type="text" id="isim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n &Uuml;creti:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" value="<%=rec("fiyat")%>" name="fiyat" type="text" id="fiyat" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n Resmi (url):</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" value="<%=rec("resim")%>" name="resim" type="text" id="resim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n A&ccedil;ıklaması:</td>
                            <td width="442"><textarea style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="aciklama" id="aciklama" rows="9" cols="40"><%=Server.HTMLEncode(rec("aciklama"))%></textarea></td>
                          </tr>
                          <tr>
                            <td align="left">Kategori:</td>
                            <td width="442"><select style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="kategori" id="kategori">
                              <option selected value="<%=rec("kategori")%>"><%=rec("kategori")%></option>
                              <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler ORDER BY id ASC"
rec.open rSQL,Connection,3,3
do while (not rec.eof)
%>
                              <option value="<%=rec("ID")%>"><%=rec("isim")%> (<%=rec("ID")%>)</option>
                              <%
rec.movenext
Loop
%>
                            </select></td>
                          </tr>
                          <tr>
                            <td align="right">&nbsp;</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" type="submit" name="Submit" value="  Kaydet  "></td>
                          </tr>
                        </table>
                        <br>
                      </form>
                      <%end if%>
                      <%
if request.QueryString("islem")="urunekle3" then
%>
                      <%=durum%>
                      <%
end if
if request.QueryString("islem")="urunekle2" and request.Form("isim")<>"" then

Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunler"
rec.open rSQL,Connection,3,3
rec.addnew
rec("isim")=request.Form("isim")
rec("fiyat")=request.Form("fiyat")
rec("resim")=request.Form("resim")
rec("aciklama")=request.Form("aciklama")
rec("kategori")=request.Form("kategori")
rec.update
response.Redirect("urunler.asp?islem=urunekle3")
end if

if request.QueryString("islem")="urunekle" then
%>
                      <form method="post" action="urunler.asp?islem=urunekle2">
                        <table border="0" width="100%">
                          <tr>
                            <td align="left">&Uuml;r&uuml;n Başlığı:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="isim2" type="text" id="isim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n &Uuml;creti:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="fiyat" type="text" id="fiyat" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n Resmi (url):</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="resim" type="text" id="resim" size="42">
                              <script language="javascript" type="text/javascript">
<!--
function opendetailwindow() {
window.open('','detailwindow','toolbar=no,scrollbars=yes,resizable=yes,width=400,height=150');
}
// -->
      </script>
                              <a onClick="opendetailwindow()" target="detailwindow" href="resimyukle.asp">G&ouml;zat</a></td>
                          </tr>
                          <tr>
                            <td align="left">&Uuml;r&uuml;n A&ccedil;ıklaması:</td>
                            <td width="442"><textarea style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="aciklama" id="aciklama" rows="9" cols="40"></textarea></td>
                          </tr>
                          <tr>
                            <td align="left">Kategori:</td>
                            <td width="442"><select style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="kategori" id="kategori">
                              <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler ORDER BY id ASC"
rec.open rSQL,Connection,3,3
do while (not rec.eof)
%>
                              <option value="<%=rec("ID")%>"><%=rec("isim")%></option>
                              <%
rec.movenext
Loop
%>
                            </select></td>
                          </tr>
                          <tr>
                            <td align="right">&nbsp;</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" type="submit" name="Submit" value="  Kaydet  "></td>
                          </tr>
                        </table>
                      </form>
                      <br>
                      <%end if%>
                      <%
if request.QueryString("islem")="urunkat2" and request.Form("isim")<>"" then
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler Where id=" & request.QueryString("id")
rec.open rSQL,Connection,3,3
rec("isim")=request.Form("isim")
rec("resim")=request.Form("resim")
rec("sira")=request.Form("sira")

rec.update
durum="Kategori Başarılı Bir Şekilde D&uuml;zenlendi."
response.Redirect("urunler.asp")
end if
if request.QueryString("islem")="urunkat" then
%>
                      <form method="post" action="urunler.asp?islem=urunkat2&id=<%=request.QueryString("id")%>">
                        <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler Where id=" & request.QueryString("id")
rec.open rSQL,Connection,3,3
%>
                        <table border="0" width="100%">
                          <tr>
                            <td align="left">Kategori ismi:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" value="<%=rec("isim")%>" name="isim2" type="text" id="isim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">Kategori resmii:</td>
                            <td><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" value="<%=rec("resim")%>" name="resim2" type="text" id="resim4" size="42" /></td>
                          </tr>
                          <tr>
                            <td align="left">Sıra</td>
                            <td><select name="sira" id="sira">
                              <option selected="selected" id="<%=rec("sira")%>"><%=rec("sira")%></option>
                              <%for i=1 to 300%>
                              <option id="<%=i%>2"><%=i%></option>
                              <%next%>
                            </select>
                              <br /></td>
                          </tr>
                          <tr>
                            <td align="right">&nbsp;</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" type="submit" name="Submit" value="  Kaydet  "></td>
                          </tr>
                        </table>
                        <br>
                      </form>
                      <%end if%>
                      <%
if request.QueryString("islem")="urunkatekle3" then
%>
                      <%=durum%>
                      <%
end if
if request.QueryString("islem")="urunkatekle2" and request.Form("isim")<>"" then

Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler"
rec.open rSQL,Connection,3,3
rec.addnew
rec("isim")=request.Form("isim")
rec("sira")=request.Form("sira")

rec("resim")=request.Form("resim")
rec.update
response.Redirect("urunler.asp?islem=urunkatekle3")
end if

if request.QueryString("islem")="urunkatekle" then
%>
                      <form method="post" action="urunler.asp?islem=urunkatekle2">
                        <table border="0" width="100%">
                          <tr>
                            <td align="left">Kategori ismi:</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="isim2" type="text" id="isim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">Kategor resmi : :</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" name="resim" type="text" id="resim" size="42"></td>
                          </tr>
                          <tr>
                            <td align="left">Sıra</td>
                            <td><select name="sira" id="sira">
                              <%for i=1 to 300%>
                              <option id="<%=i%>"><%=i%></option>
                              <%next%>
                            </select>
                              <br /></td>
                          </tr>
                          <tr>
                            <td align="right">&nbsp;</td>
                            <td width="442"><input style="font-family: verdana; font-size: 8pt; color: #000000; border: 1 solid #525454" type="submit" name="Submit" value="  Kaydet  "></td>
                          </tr>
                        </table>
                      </form>
                      <br>
                      <%end if%>
                      <b>&Uuml;r&uuml;nler</b>
                      <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunler ORDER BY id DESC"
rec.open rSQL,Connection,3,3 
If (not rec.eof) then
sayfaduzlananurun = Request.QueryString("sayfaduzlananurun")
If sayfaduzlananurun="" Then sayfaduzlananurun=1
rec.pagesize = 5
rec.absolutepage = sayfaduzlananurun
sayfa_sayisi = rec.pagecount
for i=1 to rec.pagesize
if rec.eof then 
exit for 
end if
%>
                      <table bgcolor="#FFFFFF" width="100%" border="0" cellpadding="0" cellspacing="0">
                        <tr>
                          <td width="863" height="26" align="left" valign="middle">&nbsp; <%=server.htmlencode(rec("isim"))%></td>
                          <td width="130" height="26" align="center" valign="middle"><a href="urunler.asp?islem=urun&id=<%=rec("id")%>">D&uuml;zenle</a></td>
                          <td width="119" align="center" valign="middle"><a href="urunler.asp?islem=urunsil&id=<%=rec("id")%>">Sil</a></td>
                        </tr>
                      </table>
                      <br>
                      <%
rec.movenext 
Next
end if
onceki = cint(sayfaduzlananurun) - 1
sonraki = cint(sayfaduzlananurun) + 1
if onceki < 1 then
response.write ""
else
response.write "&nbsp;<a href=urunler.asp?sayfaduzlananurun=" & onceki & "&id=" & request.QueryString("id") & ">Geri </a>"
end if
for g = 1 to sayfa_sayisi
if g = cint(sayfaduzlananurun ) then
response.write "["
response.write g& "]"
else
response.Write "<a href=urunler.asp?sayfaduzlananurun=" & g & "&id=" & request.QueryString("id") & ">" & g & "</a> "
end if
next
if sonraki > sayfa_sayisi then
response.write ""
else
response.write "<a href=urunler.asp?sayfaduzlananurun=" & sonraki & "&id=" & request.QueryString("id") & "> İleri</a>" 
end if
%>
                      <br>
                      <b>&Uuml;r&uuml;n Kategorileri</b>
                      <%
Set rec = Server.CreateObjecT("ADODB.RecordSet")
rSQL = "Select * FROM urunkategoriler ORDER BY id DESC"
rec.open rSQL,Connection,3,3 
If (not rec.eof) then
sayfakatlananurun = Request.QueryString("sayfakatlananurun")
If sayfakatlananurun="" Then sayfakatlananurun=1
rec.pagesize = 5
rec.absolutepage = sayfakatlananurun
sayfa_sayisi = rec.pagecount
for i=1 to rec.pagesize
if rec.eof then 
exit for 
end if
%>
                      <table bgcolor="#FFFFFF" width="100%" border="0" cellpadding="0" cellspacing="0">
                        <tr>
                          <td width="863" height="26" align="left" valign="middle">&nbsp; <%=server.htmlencode(rec("isim"))%></td>
                          <td width="130" height="26" align="center" valign="middle"><a href="urunler.asp?islem=urunkat&id=<%=rec("id")%>" class="sira">D&uuml;zenle</a></td>
                          <td width="119" align="center" valign="middle"><a href="urunler.asp?islem=urunkategorisil&id=<%=rec("id")%>">Sil</a></td>
                          <td width="119" align="center" valign="middle"><span class="sira">Sıra :</span> <%=rec("sira")%></td>
                        </tr>
                      </table>
                      <br>
                      <%
rec.movenext 
Next
end if
onceki = cint(sayfakatlananurun) - 1
sonraki = cint(sayfakatlananurun) + 1
if onceki < 1 then
response.write ""
else
response.write "&nbsp;<a href=urunler.asp?sayfakatlananurun=" & onceki & "&id=" & request.QueryString("id") & ">Geri </a>"
end if
for g = 1 to sayfa_sayisi
if g = cint(sayfakatlananurun ) then
response.write "["
response.write g& "]"
else
response.Write "<a href=urunler.asp?sayfakatlananurun=" & g & "&id=" & request.QueryString("id") & ">" & g & "</a> "
end if
next
if sonraki > sayfa_sayisi then
response.write ""
else
response.write "<a href=urunler.asp?sayfakatlananurun=" & sonraki & "&id=" & request.QueryString("id") & "> İleri</a>" 
end if
%></td>
                  </tr>
                </tbody>
              </table></td>
            </tr>
          </tbody>
        </table></td>
    </tr>
  </tbody>
</table>

Buna benzer veya bunun dışında örnek bir uygulama elinizde mevcutsa

Kategori
* Altkategori


şeklinde bir uygulamanız mevcutsa örnek olarak ekleyebilirseniz sevinirim ...