ana sayfa hakkında forum (yeni) rss takibi reklam yerleşimi iletişim giriş

İçerik Kategorileri

  1. Active Server Pages
    1. Temel Konular [15]
    2. Genel İçerikler [12]
    3. Nesne Kütüphanesi [0]
    4. Form Elemanları [4]
    5. Döngü İfadeleri [3]
    6. Veritabanı İşlemleri [9]
    7. Fonksiyonlar [2]
    8. Hatalar ve Çözümleri [16]
  2. ASP Hızlı Referans
    1. TextStream Nesnesi [7]
    2. Response Nesnesi [1]
    3. Request Nesnesi [1]
    4. Application Nesnesi [1]
    5. Session Nesnesi [4]
    6. Server Nesnesi [0]
    7. FSO Nesnesi [4]
  3. Browser Scripting
    1. VBScript [4]
    2. SQL Sorgulama [4]
  4. MySQL [0]
  5. Uygulamalar
    1. Hazır Fonksiyonlar [3]
    2. Hazır Kodlar [9]
    3. Script Algoritmaları [3]
    4. Script Geliştiriyoruz [2]

Sitede Ara


Hosting Sponsorumuz

Nis

29

Veritabanında arama yapmak

Temel Konular17 yorum14294 izlenimfatiherikli

Bu dersimizde veritabanında arama yapmayı göreceğiz.


Çok fazla veri içeren sayfalarda arama bölümünün olması kullanıcıya büyük kolaylık sağlar. Mesela aspogren.net'teki arama bölümünü inceleyelim. Sql kelimesini aratalım. Script yazının etiketlerinde, başlığında ve içeriğinde Sql kelimesini arayacak. Eğer bir sonuca ulaşırsa ekrana yazdıracaktır.

şimdi bu sisteme benzer bir script yapacağız.
aspogren.mdb adında veritabanı ve içinde kayitlar adında sütun oluşturun.
id (otomatik sayı)
baslik (metin)
icerik (not)
Tabloyu açıp, el ile bikaç kayıt girin.

form.asp
    <form Action="ara.asp" Method="get">
        Aranacak Sözcük:<br />
        <input type="text" name="kelime" id="kelime"/>
        <input type="Submit" Value="Gönder" />
    </form>


Action bölümü formun hangi sayfada işleneceğini berlittir.
Method ise hangi yöntemle gidileceğini belirler. Biz get yöntemini seçtik. Get'in dışında post'ta kullanılabilirdi ama arama bölümü için en iyi yöntem get'tir.

ara.asp

<%
    ara=Request.Querystring("kelime")

    Set baglanti=Server.Createobject("Adodb.Connection")
        baglanti.provider="Microsoft.Jet.Oledb.4.0"
        baglanti.open Server.Mappath("aspogren.mdb")

    sql="select * from kayitlar where baslik like '%"&ara&"%' or icerik like '%"&ara&"%'"
    Set rs=baglanti.execute(Sql)

    if rs.eof then
        response.write "Kayıt Bulunamadı !!!"
    else
        do while not rs.eof
        with response
            .write rs("baslik")
            .write "<br>"
            .write rs("icerik")
            .write "<hr>"
        end with
        rs.movenext:loop
    end if

%>

Formun method değerini get olarak verdiğimiz için ara.asp sayfamızda veriyi get yöntemi ile çekeceğiz.
İlk önce gelen veriyi ara değişkenine atadık. Sonra veritabanı bağlantımızı yaptık. Veritabanı bağlantımızı açtıktan sonra aranan kelimeyi sorgulayacak kayıt setini açtık. Sql kodumuzda LIKE komutunu kullandık. LIKE komutu bulanık arama yapmayı sağlar. Mesela aranan kelime eğer metinin içinde varsa metin seçilir.
Eğer sonuç yoksa kayıt bulunamadı yazısını yazdırdık.
Değilse yani eğer sonuç varsa bir döngüye girmesini sağladık.
Döngü bulunan kayıtları listelemekte görevlidir.

Örneği indirmek için tıklayın

İyi çalışmalar ...

Etiketler  :  sql   provider   like   with   set   get   method   action   name   id   connection  

İçeriği takip etSayfayı YazdırPermalink

17 yorum var

#174.-Duran şAHİN-30 Nisan 2007 Pazartesi

Eyw, teşekkür ettik.

#190.-ali çelik-15 Mayıs 2007 Salı

daha önceki bir örnekte de dikkatimi çekti oraya da yoruma yazmıştım ama sıkılmadım burayada yazmak istedim..
yukardaki örnekte de önce gördüğim örnekteki gibi oluşturulan nesnelerin hiçbirisi kapanmamış bana göre bu büyük bir hata.
düzeştilmesini fatih erikli ve sercan çakır beyden rica ediyorum
saygılarımla

#191.-SrcnCkr-15 Mayıs 2007 Salı

Bu bir hata değildir. Sayfada herhangi bir rapor oluşturmaz. Sadece bir nebze olsun performansa etki eder.

Çalışmalarımdan dolayı siteye yazı ekleyemiyorum. Aktifleştirmeyi düşündüğüm projelerim var. Kısa zamanda inaşaallah tekrar birlikte olacağız :)

#203.-Osman şafak-31 Mayıs 2007 Perşembe

Bu konuya ek olarak ... ile başalayan veya ... ile biten gibi bir ifadeyi aratmak için ise şu şekilde sql kodunu değiştirmemiz gerekmektedir.

Örneğin; L harfi ile başlayan başlıkları listelemek için
ara="L"
sql="select * from kayitlar where baslik like '"&ara&"%'

Kolay gelsin.

#220.-hudalfa-12 Haziran 2007 Salı

peki bu çıkan sonuçtaki isme veya içeriğe link vermeyi nasıl yapacağız. teşekkürler...

#241.-Özgür-21 Haziran 2007 Perşembe

Merhabalar;
bir sorum olacak;
Yazdığım bir scripte arama fonksiyonunu ekledim;
ancak aramayaptıracağım bir kaç tablodan arama yaptırmayı başaramadım! Sadece tek tablodan arama yaptırabiliyorum,
kod şu şekilde:

SQL = "SELECT*FROM siirler WHERE baslik like '%"&query&"%' or icerik like '%"&query&"%' or baslik like '%"&query2&"%' or icerik like '%"&query2&"%'"

Burada siirler tablosundan arama yaptırabiliyorum
ancak aratmak istediğim yazarlar ve yazılar diye iki tablo daha var
onları nasıl ekleyebilirim?

#244.-SrcnCkr-22 Haziran 2007 Cuma

şurayı incelersen eminim ki sorununu çözeceksin. Bir çok kod verilmiş, içlerinde en uygun ve en iyi performans sağlayan kodu kendine göre kullanabilirsin.

#364.-memet kaplan-07 Ekim 2007 Pazar

evet güzel anlatım denedim uygulaadım. fakat çıkan sonuç text olarak çıkıyor. bunu nasıl link olarak çıkartacaz. arama yaptığımızda çıkan sonul link olsun tıklanma özeligi olsun. nasıl yaparız

#382.-Frosten Klaust-24 Ekim 2007 Çarşamba

bu şekilde yaparsanız injection yersiniz bende size afiyet olsun derim.

#395.-GetKing-04 Kasım 2007 Pazar

Tamam saol yaptın da aranan kelimenin arka planını nasıl renkli gösteebiliriz onuda gösterirsen çok sewinirim şimdiden Teşekkürler...

#402.-i urnez-15 Kasım 2007 Perşembe

kayıt çağırırken like kullandığımda yazmış olduğum aranacak kelimenin bulunduğu birden fazla kayıt listeliyor. like yerine = kullandığımda da ise kayıt olmasına rağmen kyıt bulunamadı diyor ne yapmamızgerekir.ayrıca kayıt üzerinde değişikliğin nasıl yapılacağını da yazarsanız benim için mükemmel olacak

#416.-Cannur Daşkıran-20 Kasım 2007 Salı

Hocam eline sağlık ama boş bıraktığımız zaman bütün sonuçları gösteriyor "geri dönüp boş alanı doldurunuz"'u nasıl dedittiririz saygılar.

#419.-Hakan Dınkırcı-21 Kasım 2007 Çarşamba

Ellerinize sağlık güzel bir noktaya değinmişsiniz. Fakat birşeyi sormak istiyorum. Burada like ile bulanık arama yapıyoruz. Eğer tam eşit değeri aramak isteseydik ne yapardık.

<% ara = request.form ("ara")
SQL = "SELECT*FROM siirler WHERE baslik = '%"&query&"%'"
yapmak mümkünmü. Ben deniyorum olmuyor...

#581.-Yasiari-20 Nisan 2008 Pazar

<%

ara=Request.Form("ara")

set arama=Server.CreateObject("ADODB.recordset")
sorgum="SELECT * from siirler where baslik like '%"&ara&"%' "
arama.open sorgum,baglanti,1,3
%>

Gibi Yapabilirsiniz!

#725.-sezer-22 Haziran 2009 Pazartesi

anlatım çok güzel elinize sağlık (teşekkürler...)

#777.-baryam kaltak-17 Ocak 2010 Pazar

ya arkadaşlar,ben kendi seçtiğim bir sözlük sitesinin seçtiğim veya işaretlediğim kelimeyi aratmayı nasıl sağlayabilirim.excelde link vermeyi işaretliyorum,adresini de veriyorum o kelimeye tıkladığımda siteyi getiriyor fakat o kelimeyi aramıyor.ne yapabilirim,lütfen yardımcı olur musunuz.?

#841.-hakan coskun-25 Ağustos 2010 Çarşamba

paylaşımınız için canı gönülden teşekkür ederim.
yazdığınız kodlarla(büyük küçük harf duyarlı olmamasına rağmen)
veri tabanından verileri form.asp ve ara.asp ile buluyorum ancak; bulunan verilere link nasıl verebilirim?


Bu içeriğe yorum yazın

BBCode ve Emotions desteği aktif. Yorumunuz onaylandıktan sonra gösterilecektir.

Bu yazı ile benzer içeriğe sahip olabilecek yazılar

  1. SQL'dan Örneklemeler ve Özellikler
  2. Veritabanı Nedir? Neden Önemlidir?
  3. SQL Sorgulama - Select Komutu
  4. Veritabanına Kayıt Ekleme
  5. Veritabanındaki Bilgileri Listeleme
  6. Sql Enjeksiyonu hakkında bilgiler ve önlemler
  7. Detaylara Bakabilme
  8. Tablodaki Sütunları Listeletmek
  9. Sayaç Yapımı
  10. Veritabanına bağlanmak ve veri almak
  11. SQL Server ve Stored Procedure
  12. SQL Server 2005 (Hata Kodu 18456)
  13. Veritabanına Bağlanmak
  14. SQL'dan Örneklemeler ve Özellikler
  15. Where Deyimi II
  16. With (Kullanımı) ile Nesnelerin Yönetimi
  17. Err Nesnesi
  18. AlışVeriş Scripti Yapıyoruz
  19. Ziyaretçi Defteri Yapımı
  20. Detaylara Bakabilme
  21. Class Kullanımı
  22. Get ve Post Metodu
  23. Tablodaki Sütunları Listeletmek
  24. Detaylara Bakabilme
  25. ASP ile Ajax Kullanımı
  26. Veritabanına Bağlanmak
  27. Ziyaretçi Defteri Yapımı
  28. Detaylara Bakabilme

Yazının aktif olduğu kategoriye eklenmiş son yazılar

  1. ASP ile Sayfalama
  2. IIS Kurulumu ve Okuma Yazma İzni
  3. Jmail Mail Bileşeni ile Mail Göndermek
  4. Cdonts Mail Bileşeni ile Mail Göndermek
  5. Aranan Kelimenin Arkaplan Rengini Değiştirme
  6. Veritabanına bağlanmak ve veri almak
  7. Basit 2 fonksiyon

Tavsiye linkler: Kolay Pasta Tarifleri | İftar Vakitleri