sql Arama yaparken sorun

dark666 Suleyman

 

if($k_adi!='') {

    $where  = "(k_adi = '$k_adi')";

  } elseif($b_adi!='') {

    $where = "(b_adi LIKE '%$b_adi%')";

  } elseif($ip!='') {

    $where = "(ip LIKE '%$ip%')";

}

mysql_select_db("ip", $con);

require('tr.php');

$result = mysql_query("SELECT * FROM bilgi WHERE $where");

while($row = mysql_fetch_array($result))

  {

 

database'de 

K_adı -- B_adı -- İp -- No -- not -- islem

 

burada k_adı, b_adı,ip herhangi biri girildiğinde  arama yapmak istiyorum.

yukarıdaki fonksiyonda k_adı girince buluyor. tamammma çalışıyor 

b_adı girince aradığımız ahmet ise ah yazsak bile tüm ah ile başlayanları gösteriyor

ip de b_adı gibi çalışıyor.

 

fonksiyonu değiştirip şöyle yaptım.

if($k_adi!='') {

    $where  = "(k_adi = '$k_adi')";

  } elseif($b_adi!='') {

    $where = "(b_adi = '$b_adi')";

  } elseif($ip!='') {

    $where = "(ip = '$ip')";

}

böyle de k_adı girileni buluyor. çalışıyor ama  b_adı ve ip hiçbirşey bulmuyor.

 

b_adi aradığımız ahmet ise ahmet yazdığımızda bulmuyor.

ip de öyle. 

12-09-2013 14:42

    Php

    dark666 Suleyman

    $result = mysql_query("SELECT * FROM bilgi WHERE k_adi = '$k_adi' OR b_adi LIKE '%$b_adi%' OR ip LIKE '%$ip%');

    bu şekilde de denedim olmuyor

    k_adi ile normal olarak arama yapabiliyoruz. b_adi ve ip ile de arama yapabiliyoruz ama AHMET veri tabanından bulacaksak AH bile yazsak bütün AH ile başlıyan isimler sergiler. benim istediğim bunu yapmaması. eşitse ekrana yazdırsın. aşağıdaki eşitliği yaptım olmadı yinee.

     

    $result = mysql_query("SELECT * FROM bilgi WHERE k_adi = '$k_adi' OR b_adi = '$b_adi' OR ip = '$ip');

     

    bu kodların neresinde hata var çıldıracağımmm.

     


    13-09-2013 08:33 Edit:13-09-2013 08:38

      Php

      fatihkeskin nedencicom

      if($k_adi!='')yazmışsın o su şekilde olcakif($k_adi!=''")

      elseif($b_adi!='') yazmışsın o su şekilde olcakif($k_adi!=''") elseif($b_adi!=''")

      herhalde cok yanlış var yada en azından ben öyle düşünüyorum

      15-09-2013 22:35

        dark666 Suleyman

        Çift tırnak denedim yine olmuyor.

         

        Dediğim gibi k_adı ile arama yapabiliyorum. eşitliği uyguluyor

        "(k_adi = '$k_adi')" doğru çalışıyor.

        B_adı ve ip dengesiz çalışıyor.  yukarıdaki eşitlik b_adi ve ip olmuyor.

        "(b_adi = '$b_adi')" 

        "(ip = '$ip')" 

        yukarıdaki eşitlikler yazıyorum hiçbişey bulmuyor. bu konuda yardımcı olursanız sevinirim.

         

        16-09-2013 11:47

          www.Phpkodlari.com © 2009 Herkes Php öğrenecek
          Web tasarım ve eğitim kaynağınız.