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> »</strong></td>
<td width="158" align="left" valign="middle"><a href="urunler.asp?islem=urunekle"><strong>Ürü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> »</strong></td>
<td width="158" align="left" valign="middle"><a href="urunler.asp?islem=urunkatekle"><strong>Ürü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"> </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="Ürün Başarılı Bir Şekilde Dü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">Ürü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">Ürün Ü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">Ürü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">Ürün Açı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"> </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">Ürü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">Ürün Ü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">Ürü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özat</a></td>
</tr>
<tr>
<td align="left">Ürün Açı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"> </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ü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"> </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"> </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>Ürü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"> <%=server.htmlencode(rec("isim"))%></td>
<td width="130" height="26" align="center" valign="middle"><a href="urunler.asp?islem=urun&id=<%=rec("id")%>">Dü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 " <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>Ürü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"> <%=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ü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 " <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 ...