• 18-03-2021, 01:31:04
    #1
    Sql da tam kelime araması yaptırmak istiyorum.. suan like komutu kullandığım için, bir tane harf dahi yazsa onlarca sonuc çıkıyor. Ama ben sadece sql da bulunan tablo içeriği neyse o kelime yazıldığında sonuc çıkmasını istiyorum. Kodlar su şekilde;

    <?php
    $aranacak = $_POST['arama'];
    $urun_liste=$db->prepare("SELECT o_talepleri.gadi, o_talepleri.badi, o_talepleri.durum from o_talepleri where gadi like '%" . $aranacak . "%'");
    $urun_liste->execute();
    while ($urun=$urun_liste->fetch(PDO::FETCH_ASSOC)) {
    $kat_id = $urun['badi'];

    $cat = $db->query("SELECT * FROM kategoriler WHERE id='{$kat_id}'")->fetch(PDO::FETCH_ASSOC);

    $say++;
    if($urun['durum']=='0'){
    $status = '<span class="badge badge-warning">Bekliyor</span>';
    }elseif($urun['durum']=='1'){
    $status = '<span class="badge badge-success">Onaylandı</span>';
    }elseif($urun['durum']=='2'){
    $status = '<span class="badge badge-danger">Reddedildi</span>';
    }
    ?>
  • 18-03-2021, 01:49:46
    #2
    LIKE'da kelimenin neresine % işareti koyarsanız o alandaki veride içeren kelimenin orasını gözardı eder. Eğer "gadi" alanında kelimesi kelimesine eşleşmesini istiyorsanız LIKE kullanmayın direkt = kullanın.
  • 18-03-2021, 02:01:55
    #3
    voLwy adlı üyeden alıntı: mesajı görüntüle
    LIKE'da kelimenin neresine % işareti koyarsanız o alandaki veride içeren kelimenin orasını gözardı eder. Eğer "gadi" alanında kelimesi kelimesine eşleşmesini istiyorsanız LIKE kullanmayın direkt = kullanın.
    Öncelikle yorumunuz için teşekkür ediyorum.
    Evet gadi tablosunda tam eşleşen kelime olacak. Dediğinizi denedim ama olmadı sanırım

    where gadi = '. $aranacak .' Bu sekilde yaptim ancak arama sonuçlarını tamamen boş gösteriyor.
  • 18-03-2021, 02:44:30
    #4
    Hafizyazar adlı üyeden alıntı: mesajı görüntüle
    Öncelikle yorumunuz için teşekkür ediyorum.
    Evet gadi tablosunda tam eşleşen kelime olacak. Dediğinizi denedim ama olmadı sanırım

    where gadi = '. $aranacak .' Bu sekilde yaptim ancak arama sonuçlarını tamamen boş gösteriyor.

    $urun_liste=$db->prepare("SELECT o_talepleri.gadi, o_talepleri.badi, o_talepleri.durum from o_talepleri where gadi = '" . $aranacak . "'");
    Böyle deneyin bakalım.