• 11-05-2008, 13:55:26
    #1
    <? include("dbs.php"); ?>
    <?
    $kelime = guvenlik($_GET['kelime']);
    $page = $_GET['p'];
    $max=10;
    if (!$page) $page=1;
    $alt=($page - 1) * $max;
    $nr = mysql_num_rows(mysql_query("Select * from  aranan where kelime= '$kelime'"));
    if($nr==0) {
    @mysql_query("Insert Into aranan (kelime,hit) values ('$kelime','1')");
    }else{
    @mysql_query("Update aranan set hit = hit+1 where kelime= '$kelime'");
    }
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="tr" lang="tr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=windows-1254" />
        <meta name="robots" content="all,follow" />
        <title>Arama Sonuçları <?=$kelime;?> - <?=$site_adi;?></title>
        <meta name="description" content="Arama Sonuçları <?=$kelime;?>" />
        <meta name="keywords" content="Arama Sonuçları <?=$kelime;?>" />
        <link rel="index" href="/" title="Ana Sayfa" />
        <link rel="stylesheet" media="screen,projection" type="text/css" href="/images/main.css" />
        <link rel="stylesheet" media="print" type="text/css" href="/images/print.css" />
        <link rel="stylesheet" media="aural" type="text/css" href="/images/aural.css" />
    </head>	
    <body id="www-url-cz">
    <div id="main" class="box">
    <? include("header.php"); ?>
        <div id="page" class="box">
        <div id="page-in" class="box">
            <div id="strip" class="box noprint">
     	<p id="rss"><strong><? include("online.php"); ?></strong> Online Ziyaretçi</p>
    	          <p id="breadcrumbs"><a href="/">Ana Sayfa</a> &gt; Arama sonuçları  '<strong><?=$kelime;?></strong>'</p>
                <hr class="noscreen" />
            </div>
            <div id="content">
    	<? $i=1;$q = mysql_query("Select * from ruya where ruya like '%$kelime%'  and onay=1 order by id limit $alt,$max");
    	$sql2=mysql_query("Select * from ruya where ruya like '%$kelime%' and onay=1");
    	$nr2=mysql_num_rows($sql2);
    	if($nr2 == 0) {
    	 echo 'Arama sonuçlarına göre kayıt bulunamadı.';
    	}	else	{
    	while ($rs=mysql_fetch_array($q)) {?>
                <!-- basla -->
                <div class="article">
                    <h2><span><a href="/RuyaTabiri/<?=$rs[ruya_s];?>.html"><?=$rs[ruya];?></a></span></h2>
                    <p class="info noprint">
                        <span class="date">Tarih : <?=$rs[tarih];?></span><span class="noscreen">,</span>
                        <span class="cat">Okunma : <?=$rs[hit];?></span><span class="noscreen">,</span>
                        <span class="user">Gönderen : <?=$rs[gonderen];?></span><span class="noscreen">,</span>
                        <span class="comments"><a href="/RuyaTabiri/<?=$rs[ruya_s];?>.html#yorumlar">Yorumlar</a></span>
                    </p>
                    <p><? if ($i==1) {?>
    <? $i=0;}?> <?=substr($rs[tabir],0,200);?> ...</p>
                    <p class="btn-more box noprint"><strong><a href="/RuyaTabiri/<?=$rs[ruya_s];?>.html">Devamı</a></strong></p>
                </div> <!-- /bitir -->
    	<? } ?>
    <span style="font-size: 11px;">
    <? $page2= $site . "/arama.php?kelime=" . $kelime;
    $ana_baglanti = $page2;
    $eleman_sayisi = $nr2;
    $sayfa_basina = $max;
    $aktif_sayfa = $page;
    $ekmi = 0;
    $sayfa_degiskeni = "&p=";
    	echo "<div class=\"pagination\"><b>Sayfalar:</b>";
        // Bu fonksiyon calismak icin birdensuna() fonksiyonunu gerektirir 
        $sayfa_sayisi = ceil($eleman_sayisi/$sayfa_basina); 
        if ( $aktif_sayfa < 1 OR $aktif_sayfa > $sayfa_sayisi ) { $aktif_sayfa = 1; } 
        $sayfalar_araligi = ceil($sayfa_sayisi/10); // sayisi kucultuldukce baglanti sayisi azalir 
        $sayfalanacak = array(1,$sayfa_sayisi,birdensuna(($aktif_sayfa-20),$sayfa_sayisi) 
        ,birdensuna(($aktif_sayfa-15),$sayfa_sayisi),birdensuna(($aktif_sayfa-10),$sayfa_sayisi) 
        ,birdensuna(($aktif_sayfa-5),$sayfa_sayisi),birdensuna(($aktif_sayfa-2),$sayfa_sayisi) 
        ,birdensuna(($aktif_sayfa-1),$sayfa_sayisi),$aktif_sayfa 
        ,birdensuna(($aktif_sayfa+1),$sayfa_sayisi),birdensuna(($aktif_sayfa+2),$sayfa_sayisi) 
        ,birdensuna(($aktif_sayfa+5),$sayfa_sayisi),birdensuna(($aktif_sayfa+10),$sayfa_sayisi) 
        ,birdensuna(($aktif_sayfa+15),$sayfa_sayisi),birdensuna(($aktif_sayfa+20),$sayfa_sayisi)); 
        for ($i=$aktif_sayfa;$i>0;$i=$i-$sayfalar_araligi) { $sayfalanacak[] = $i; } 
        for ($i=$aktif_sayfa;$i<$sayfa_sayisi;$i=$i+$sayfalar_araligi) { $sayfalanacak[] = $i; } 
        $sayfalanacak = array_unique($sayfalanacak); 
        sort($sayfalanacak); 
        foreach ( $sayfalanacak as $sayfa_no ) { 
            if ( $sayfa_no == $aktif_sayfa ) { echo " [<span class=\"here\"><span>$sayfa_no</span></span>] "; } 
            else { 
                if ( $ekmi == 0 ) { echo "<a href=\"$ana_baglanti$sayfa_degiskeni$sayfa_no\">$sayfa_no</a> "; } 
              	 else { echo "<a href=\"$ana_baglanti&$sayfa_degiskeni$sayfa_no\">$sayfa_no</a> "; } 
    }    }    
    echo "<br></div>";
    }?></span>
                <hr class="noscreen" />
            </div> 
            <!-- sag menu -->
    	<? include("sag.php"); ?>
    </body>
    </html>
    arkadaşlar böle bir arama.php var ama full texti nasıl gömücem bulamadım. bilen arkadaşlar yardımcı olabilirse sevinirim. yardımcı olacaklara şimdiden teşekkur ederim.
  • 11-05-2008, 21:19:17
    #2
    bilen bir phpci arkadaş var mı ?
  • 11-05-2008, 22:21:28
    #3
    Üyeliği durduruldu
    kodda sadece rüya başlığına göre aramış. sonuc zor bulur.
    fulltext kullanmadan hem rüya başlığında hem içeğinde(rüya açıklaması) arama yapıp birde kelimeleri parçalatırsan fulltext gibi sonuc bulabilir.

    $basliklike=array(); //rüya başlığı
    $iceriklike=array(); //rüya açıklaması
    $parcala=explode(' ',trim($kelime));
    foreach(
    $parcala as $x){
    $basliklike[]="ruya like '%$x%'";
    $iceriklike[]="icerik like '%$x%'"; //icerik değiştirirsin
    }
    $baslikk=implode(' OR ',$basliklike);
    $icerikk=implode(' OR ',$iceriklike);

    -------------------------
    $q = mysql_query("Select * from ruya where ruya like '%$kelime%' and onay=1 order by id limit $alt,$max");

    kodları sorgusunun üstüne ekleyip sorguyu değiştir

    $q = mysql_query("Select * from ruya where ($baslikk OR $icerikk) and onay=1 order by id limit $alt,$max");


    bu şekilde dene bi olmazsa fulltext örneği veriyim sen gömersin...


  • 11-05-2008, 22:33:52
    #4
    mysql sorgunu aşagıdaki örnekteki gibi degiştir.
    mysql_query("SELECT * FROM ruya WHERE MATCH (ruya) AGAINST ('*$kelime*' IN BOOLEAN MODE)");
     
    ayrıca phpmyadminden ruya tablosundaki ruya colom Fulltext index olarak degiştir.
  • 11-05-2008, 22:54:42
    #5
    benim istedigim mesela ihlamur olarak arattıklarında hem ihlamur hemde ıhlamur bu kodların hangisinde mevcut acaba. yardım eden arkadaşlar teşekkurler bu arada.
  • 12-05-2008, 01:35:32
    #6
    Üyeliği durduruldu
    dreamweav3r adlı üyeden alıntı: mesajı görüntüle
    benim istedigim mesela ihlamur olarak arattıklarında hem ihlamur hemde ıhlamur bu kodların hangisinde mevcut acaba. yardım eden arkadaşlar teşekkurler bu arada.
    dediğin i leri ı , ö leri o .... çevirip kelimeler üretip aramak ise baya uzar gider sorgu ,

    ihlamur aratıldığında ıhlamur geçen rüya bulunmayacağı için denemek lazım...
  • 12-05-2008, 09:20:59
    #7
    sweatcell adlı üyeden alıntı: mesajı görüntüle
    dediğin i leri ı , ö leri o .... çevirip kelimeler üretip aramak ise baya uzar gider sorgu ,
    ihlamur aratıldığında ıhlamur geçen rüya bulunmayacağı için denemek lazım...
    demek istediğini anladım ama sanırım full text bu işi halledebiliyormuş.

    ayrıca ilgilendiğin için saol sweat..
  • 12-05-2008, 11:18:25
    #8
    Üyeliği durduruldu
    dreamweav3r adlı üyeden alıntı: mesajı görüntüle
    demek istediğini anladım ama sanırım full text bu işi halledebiliyormuş.

    ayrıca ilgilendiğin için saol sweat..
    fulltext halledebiliyormuymuş?...
    kaynak varmı merak ettim, işimede yarar
  • 13-05-2008, 00:08:29
    #9
    sweatcell adlı üyeden alıntı: mesajı görüntüle
    fulltext halledebiliyormuymuş?...
    kaynak varmı merak ettim, işimede yarar

    walla öyle dediler bir umut araştırıyoruz
    @WebLOADER yazdığının sorgunun ne işe yaradığını anlatabilir misin.