• 28-02-2009, 22:34:39
    #1
    merhaba sitemde arama yaptığımda en az 4 harfli kelimeler için sonuç çıkıyor

    ben 3 harfli kelimlerde de sonuç versin isitiyorum
    mesela mp3 , dvd , zip , gibi kelimler
    bunun için ne yapmam nereyi değiştirmem gerekir acaba
    arama.php aşağıdaki gibidir
    <?
    include("ayar.inc.php");
    include("fonksiyonlar.inc.php");
    $__TITLE__ = $_GET["kl"]." download";
    include("ust.php");
    $kategori = $_GET["kategori"];
    $kl = $_GET["kl"];
    
    if( strlen( $kl ) <= 2 )
        echo("<script language=\"Javascript\">\n<!--\n alert(\"Aranacak kelime en az 3 harften oluşabilir.\");\n window.location.href=\"/aranan.php\"; \n-->\n</script>");
    
    mysql_connect ($dbhost, $dbuser, $dbpass) or die (mysql_error());
    @mysql_select_db ($dbname) or die (mysql_error());
    
    if(mysql_query("INSERT INTO arama (id, kelime, hit) VALUES (null, '$kl', '1')"))
     echo("");
    else
     mysql_query("UPDATE arama SET hit = hit + 1 WHERE kelime = '$kl'");
    
    $sayfada_gosterilecek_program_sayisi = 20;
    
    if($baslangic == "") $baslangic = 0;
    
    if($kategori == 0)
    {
    $dnm = mysql_query("SELECT *, MATCH(prog, fulldesc, url_down) AGAINST('$kl') AS skor FROM progs WHERE MATCH(prog, fulldesc, url_down) AGAINST('$kl') AND status=1 ORDER BY skor DESC limit $baslangic,$sayfada_gosterilecek_program_sayisi") or die(mysql_error());
    $dnm2 = mysql_query("SELECT * FROM progs WHERE MATCH(prog, fulldesc, url_down) AGAINST('$kl') AND status = 1");
    }
    else
    {
    $dnm = mysql_query("SELECT *, MATCH(prog, fulldesc, url_down) AGAINST('$kl') AS skor FROM progs WHERE MATCH(prog, fulldesc, url_down) AGAINST('$kl') AND status=1 AND catid='$kategori' ORDER BY skor DESC limit $baslangic,$sayfada_gosterilecek_program_sayisi") or die(mysql_error());
    $dnm2 = mysql_query("SELECT * FROM progs WHERE MATCH(prog, fulldesc, url_down) AGAINST('$kl') AND status=1 AND catid='$kategori'");
    }
    
    $sonuc = mysql_num_rows($dnm);
    $program_sayisi = mysql_num_rows($dnm2);
    echo(mysql_error());
    ?>
    
    <table width="100%" border="0" cellspacing="0" cellpadding="2" bordercolor="#0066cc" align="center" class="cizgiCopy">
      <tr>
        <td><b> <font face="Verdana" size="1"><a href="index.php">Anasayfa</a> > <? echo($kl." aramasında ".$program_sayisi." sonuç bulunmuştur"); ?></font></b></td>
        <td>&nbsp;</td>
      </tr>
      <tr>
        <td valign="TOP">
          <table>
            <tr>
              <td>
                <?
    if($program_sayisi != 0)
    {
    
    ?>
                GOOGLE 336x280
                <?
    }
    ?>
              </td>
            </tr>
            <?
    while($row1 = mysql_fetch_array($dnm)) {
    $url = "http://www.site.com/download.php?pid=".$row1["pid"];
    $aciklama = "";
    $aciklama = substr($row1["fulldesc"], 0, 100);
    //$aciklama = wordwrap($aciklama, 100, "<br>\n");
    $detay_link = detay_link($row1['catid'],$row1['prog'],$row1['pid']);
    
    echo("<TR><TD BGCOLOR=\"#ffffff\" ID=\"taw1\" CLASS=\"ch\" ALIGN=\"left\" VALIGN=\"center\">");
    echo("<DIV STYLE=\"overflow:hidden; width:332px; padding-left:2px\"><FONT STYLE=\"line-height:14px;font-size:11px\" FACE=\"arial,sans-serif\" COLOR=\"#000033\">");
    echo("<FONT STYLE=\"line-height:14px;font-size:11px\" FACE=\"arial,sans-serif\" COLOR=\"#000033\"><A ID=\"aw1\" TARGET=\"_top\" HREF=\"$detay_link\" class=\"ch\"><B><u>".ucwords(strtolower($row1[prog]))." ".ucwords(strtolower($row1[ver]))."</u></B></A> <BR>");
    echo("</FONT><FONT STYLE=\"line-height:14px;font-size:11px\" FACE=\"arial,sans-serif\" COLOR=\"#000000\">".ucwords($aciklama)."<br>");
    echo("</FONT><A TARGET=\"_top\" HREF=\"$detay_link\"><FONT STYLE=\"line-height:14px;font-size:10px\" FACE=\"arial,sans-serif\" COLOR=\"#0000ff\">".str_replace("http://","",$detay_link)."</FONT></a>");
    echo("</FONT></div><br></td></tr>");
    }
    ?>
            <tr>
              <td>
                <!--<script language='JavaScript' type='text/javascript' src='http://reklam.ejder.com/adx.js'></script>
                            <script language='JavaScript' type='text/javascript'>
    <!--
       if (!document.phpAds_used) document.phpAds_used = ',';
       phpAds_random = new String (Math.random()); phpAds_random = phpAds_random.substring(2,11);
       
       document.write ("<" + "script language='JavaScript' type='text/javascript' src='");
       document.write ("http://reklam.ejder.com/adjs.php?n=" + phpAds_random);
       document.write ("&amp;what=zone:16&amp;target=_blank");
       document.write ("&amp;exclude=" + document.phpAds_used);
       if (document.referrer)
          document.write ("&amp;referer=" + escape(document.referrer));
       document.write ("'><" + "/script>");
    //-->
                </script>
                <noscript>
                <a href='http://reklam.ejder.com/adclick.php?n=a1951943' target='_blank'><img src='http://reklam.ejder.com/adview.php?what=zone:16&amp;n=a1951943' border='0' alt=''></a>
                </noscript>
                --> </td>
            </tr>
          </table>
          <p>Aradığınız programı bulamadıysanız bir de aşağıdaki siteleri deneyin :<br>
            » <a href="http://www.tamindir.com/ara.asp?field=<?=$kl;?>">TAMindir</a> &nbsp; 
            » <a href="http://www.linkcenneti.com/arama.php?kelime=<?=$kl;?>">Linkcenneti</a> &nbsp; 
            » <a href="http://tr.ejder.com/web-search.php?search=<?=$kl;?>">Google</a></p>
        </td>
        <td width="120" valign="TOP"> </td>
      </tr>
    </table>
    <table align="CENTER">
      <tr>
        <td>
          <?
    $onceki = $baslangic - $sayfada_gosterilecek_program_sayisi;
    $sonraki = $baslangic + $sayfada_gosterilecek_program_sayisi;
    
    echo "<font size=3 face=tahoma>";
    if($baslangic >= $sayfada_gosterilecek_program_sayisi) 
    {
    echo "<a href=\"".$_SERVER[PHP_SELF]."?catid=$catid&cat="."$cat"."&baslangic=".$onceki."\"><- Önceki Sayfa</a> ";
    }
    
    $dnm = $program_sayisi / $sayfada_gosterilecek_program_sayisi;
    $dnmx = (int)$dnm;
    $dnmy = $dnmx * $sayfada_gosterilecek_program_sayisi;
    if($dnmy < $program_sayisi) $dnmx++;
    
    $x = 1;
    $qwerty = 0;
    
    for($x = 1;$x <= $dnmx; $x++)
    {
     echo "<a href=\"".$_SERVER[PHP_SELF]."?kl=$kl"."&baslangic=".$qwerty."\">[".$x."]</a> ";
     $qwerty += $sayfada_gosterilecek_program_sayisi;
    }
    
    if($sonraki <= $program_sayisi) 
    {
    echo "<a href=\"".$_SERVER[PHP_SELF]."?kl=$kl"."&baslangic=".$sonraki."\">Sonraki Sayfa -></a>";
    }
    
    echo "</font>";
    ?>
        </td>
      </tr>
    </table>
    </CENTER>
    <?
    include("alt.php");
    ?>
  • 28-02-2009, 22:37:40
    #2
    emin olmamamla birlikte ; if( strlen( $kl ) <= 2 ) yi if( strlen( $kl ) <= 0 ) yaparsan olabilir
  • 28-02-2009, 22:39:01
    #3
    if( strlen( $kl ) <= 2 )

    değiştir

    if( strlen( $kl ) < 3 )

    edit
  • 28-02-2009, 22:52:21
    #4
    Üyeliği durduruldu
    python adlı üyeden alıntı: mesajı görüntüle
    if( strlen( $kl ) <= 2 )
    değiştir
    if( strlen( $kl ) <= 3 )
    nedir ne degildir;
    PHP: strlen - Manual
  • 28-02-2009, 23:22:10
    #5
    arkadaşlar dediklerinizi denedim ama olmuyor
    if( strlen( $kl ) < 3 )
    if( strlen( $kl ) <=0 )
    if( strlen( $kl ) <=3 )

    denedim ama yine olmadı sonuş sayfasında

    mesela dvd aratınca

    dvd için 0 sonuç bulundu çıkıyor


    bunu mysql dan biyerden mi değiştirmek lazım acaba
  • 28-02-2009, 23:43:20
    #6
    Üyeliği durduruldu
    baboli789 adlı üyeden alıntı: mesajı görüntüle
    arkadaşlar dediklerinizi denedim ama olmuyor
    if( strlen( $kl ) < 3 )
    if( strlen( $kl ) <=0 )
    if( strlen( $kl ) <=3 )
    denedim ama yine olmadı sonuş sayfasında
    mesela dvd aratınca
    dvd için 0 sonuç bulundu çıkıyor
    bunu mysql dan biyerden mi değiştirmek lazım acaba
    hocam harf sınırlaması olmasın mı istiyorsunuz.

    dvd aratınca bulacagini nerden biliyorsunuz bu arada?

    MATCH(prog, fulldesc, url_down)

    kodlariniz sadce prog fulldesc ve url_down alanlarinda ariyor
  • 01-03-2009, 00:13:01
    #7
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    hocam harf sınırlaması olmasın mı istiyorsunuz.

    dvd aratınca bulacagini nerden biliyorsunuz bu arada?

    MATCH(prog, fulldesc, url_down)

    kodlariniz sadce prog fulldesc ve url_down alanlarinda ariyor
    evet harf sınırlaması olmasın isitoyrum arkadaşım



    prog : başlıklar
    fuşlldesc : açıklama kısmı
    url_down : indirme linki

    buralarda geçen örneğin dvd , iso , avi , zip , gibi kelimler herbiri belki 1000 nin üzerinde dir yani aranan yerlerde aslında bu kelimelerim var

    ama 3 harfli olduğu için aranan kalime sonuç 0 gösteriliyo
  • 01-03-2009, 01:37:29
    #8
    ozaman burayı kaldır dene.
    if( strlen( $kl ) <= 2 )
        echo("<script language=\"Javascript\">\n<!--\n alert(\"Aranacak kelime en az 3 harften oluşabilir.\");\n window.location.href=\"/aranan.php\"; \n-->\n</script>");
    $_GET komutlarınıda koruma altına al hiç bir güvenliği yok şuanda.
  • 01-03-2009, 01:38:33
    #9
    pardon yanlışlık oldu.