• 26-10-2009, 22:05:31
    #1
    Merhaba arkadaşlar
    hazırladığım bir siteye arama motoru ekliyecem
    ve hazırladığım dosyayı basitce anlatayım

    islem.asp
    <%
    	dim g_arama
    	g_arama=request("ara")
    
    	dim conn, DSN, SQL, rs
    	set conn=server.createObject("ADODB.Connection")
    	DSN="Data source=" & server.MapPath ("vt.mdb") & "; Provider=Microsoft.jet.oledb.4.0;"
    	conn.open DSN
    
    	sql = "select * from bilgi_tbl where mesaj like '%" & g_arama & "%'"
    	set rs=conn.execute(SQL)
    
    do while not rs.eof
    	response.write("<b>Gönderen:</b> " & rs("gonderen") &" // " & rs("tarih") &" // " & rs("email") &"<br><br>")
    	response.write(rs("mesaj") &"<br><hr>")
    	rs.movenext
    	loop
    
    conn.close()
    %>
    farzedelimki veritabanında aşağıdaki gibi bir mesaj var
    Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim
    yukardaki sayfa ile "bugün" veya "hava bozacak gibi" diye arama yaptığımda
    başarıyla çalışıyor
    fakat "bugün gibi görünüyor" diye arama yaptığımı varsayarsak
    sonuç bulunamıyor..

    bende islem.asp sayfamı şöyle değiştirdim

    <%
    	dim g_arama, g_yeni
    	g_arama=request("ara")
    	g_yeni=split(g_arama," ")
    
    	dim conn, DSN, SQL, rs
    	set conn=server.createObject("ADODB.Connection")
    	DSN="Data source=" & server.MapPath ("vt.mdb") & "; Provider=Microsoft.jet.oledb.4.0;"
    	conn.open DSN
    
    for i=0 to Ubound(g_yeni)
    	sql = "select * from bilgi_tbl where mesaj like '%" & g_yeni(i) & "%'"
    	set rs=conn.execute(SQL)
    
    	response.write("<b>Gönderen:</b> " & rs("gonderen") &" // " & rs("tarih") &" // " & rs("email") &"<br><br>")
    	response.write(rs("mesaj") &"<br><hr>")
    	next
    conn.close()
    %>
    şimdi bu sayfa için söylüyorum
    farzedelimki mesajımız yine
    Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim olsun

    "Bugün gibi görünüyor" şeklinde mesajda bulunan veriyi arattırıyorum
    karşıma şöyle bir sonuc geliyor
    .................
    Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim

    Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim

    Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim
    .................

    Son sayfam tam istedigim çalışıyor fakat aynı mesajda aranılanlar varsa
    mesaj bir defa gösterilsin..

    Yardımlarınızı bekliyorum
  • 29-10-2009, 13:20:48
    #2
    senin kodunda aranan her sözcük for ile döngüye sokulmuş ve haliyle hepsini birer birer arıyor.

    <%
    	dim g_arama, g_yeni
    	g_arama=request("ara")
    	' g_yeni=split(g_arama," ")
    
    	dim conn, DSN, SQL, rs
    	set conn=server.createObject("ADODB.Connection")
    	DSN="Data source=" & server.MapPath ("vt.mdb") & "; Provider=Microsoft.jet.oledb.4.0;"
    	conn.open DSN
    
    
    	sql = "select * from bilgi_tbl where mesaj like '%" & g_arama & "%'"
    	set rs=conn.execute(SQL)
    
    	response.write("<b>Gönderen:</b> " & rs("gonderen") &" // " & rs("tarih") &" // " & rs("email") &"<br><br>")
    	response.write(rs("mesaj") &"<br><hr>")
    
    conn.close()
    %>
    şu kod sadece aradığınız veriyi arar.
  • 06-11-2009, 22:13:29
    #3
    Üyeliği durduruldu
    bu işini görür sanırım
    <%
    	dim g_arama, g_yeni
    	g_arama=request("ara")
    	g_yeni=split(g_arama," ")
    
    g_son = "where"
    for i=0 to Ubound(g_yeni)
    	if i <> Ubound(g_yeni) then
    		g_son = g_son & " mesaj like '%" & g_yeni(i) & "%' or"
    	else
    		g_son = g_son & " mesaj like '%" & g_yeni(i) & "%'"
    	end if
    next
    
    	dim conn, DSN, SQL, rs
    	set conn=server.createObject("ADODB.Connection")
    	DSN="Data source=" & server.MapPath ("vt.mdb") & "; Provider=Microsoft.jet.oledb.4.0;"
    	conn.open DSN
    
    
    	sql = "select * from bilgi_tbl"&g_son
    	set rs=conn.execute(SQL)
    
    	response.write("<b>Gönderen:</b> " & rs("gonderen") &" // " & rs("tarih") &" // " & rs("email") &"<br><br>")
    	response.write(rs("mesaj") &"<br><hr>")
    
    conn.close()
    %>
    mesaj :
    "Bugün hava bozacak gibi görünüyor, dışarı çıkmamanı tavsiye ederim olsun"

    "Bugün gibi görünüyor" şeklinde mesajda bulunan veriyi arattırdığında içerisinde "bugün" veya "gibi" veya "görünüyor" kelimelerinin hepsi veya herhangi biri geçen tüm mesajlar listelencektir