ASP ile klasör şeklinde link sistemi forumlarda en çok sorulan soruların başında geliyor. Bir çok sitede son zamanlarda Google'da üst sıralarda çıkmak için bu yöntemi kullanmaya başladı.
Peki bu nasıl yapılıyor?
Aslında gayet basit. Fakat bunun için sunucunuzda sizin 404 hata sayfaları üzerinde oynayabilmeniz lazım. Bazı sunucular buna izin verir. Örneğin yapacağımız çalışmada ben hata sayfasını 404.asp olarak belirlediğinizi varsayıyorum.
Bundan sonra sitenizde bir dosya bulunamadığı zaman sunucu otomatik olarak 404.asp'yi çalıştıracaktır. Normalde sunucumuzda böyle bir klasör olmadığından artık bizim 404.asp ye yönlenecek daha doğrusu adres satırı değişmeden sadece 404.asp çalıştırılacak.
Örneklerde kullanacağımız sayfa adresinide http://www.ayberk.com/blog/51 olarak belirleyelim.
404.asp de ilk yapmamız gereken "/" işaretleri arasında kalan kelimeleri ayırmak. Daha sonrada buna göre veritabanından verileri çağırmamız gerekiyor;
AdresSatiri = Request.ServerVariables("QUERY_STRING")
Ayrilan = Split(AdresSatiri,"/")strSQL = "Select * from Blog where id = "& Cint(Trim(Ayrilan(4))) &" "
Set Rs = Baglanti.Execute(strSQL)If Ayrilan(3) = "blog" then
strSQL = "Select * from Blog where id = "& Cint(Trim(Ayrilan(4))) &" "
Set Rs = Baglanti.Execute(strSQL)
ElseIf Ayrilan(3) = "kategori" then
strSQL = "Select * from Kategori where id = "& Cint(Trim(Ayrilan(4))) &" "
Set Rs = Baglanti.Execute(strSQL)
Else
'Diğer İşlemler'
End IfAdresSatiri = Request.ServerVariables("QUERY_STRING")
Ayrilan = Split(AdresSatiri,"/")
Ayrildi = Split(Ayrilan(3),"-")strSQL = "Select * from Blog where id = "& Cint(Trim(Ayrildi(1))) &" "
Set Rs = Baglanti.Execute(strSQL)If Ayrildi(0) = "blog" then
strSQL = "Select * from Blog where id = "& Cint(Trim(Ayrildi(1))) &" "
Set Rs = Baglanti.Execute(strSQL)
ElseIf Ayrildi(0) = "kategori" then
strSQL = "Select * from Kategori where id = "& Cint(Trim(Ayrildi(1))) &" "
Set Rs = Baglanti.Execute(strSQL)
Else
'Diğer İşlemler'
End If