Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Birden fazla değere sahip sütunda karşılaştırma yapmak

Checkbox'tan birden fazla seçimin değerlerini veritabanına 1,2,3 şeklinde yazdırıyorum. Sadece bir veri olduğunda IN komutu ile 1 ve 3'ü seçenleri listeletebiliyordum ama birden fazla veriye sahip bir sütundan 1 ve 3'ü seçenleri mysql'de nasıl listeletebilirim ?
  • where like veya match bloean kullanabilirsin. aklıma gelenler bunlar.
    siyahbeyaz 10 yıl önce yazdı
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • siyahbeyaz adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    472 cevap - 20 soru
    id | Dbfield
    1 | 1,2,3,4
    2 | 1,3,6
    3 | 2,4,5,6,3
    4 | 1,4,6,8,3


    gibi bir db yapın var . bunun ıcın dongu kurarken dongunun ıcınde
    virgulleri ayırıp her sayiyi tek tek array icine alacaksin...
    yani kodsal olarak


    $arra = "";
    while($yaz=mysql_fetch_object($sql)) {
    $exp = explode(",",$yaz->Dbfield);
        for($i<0;sizeof($exp);$i++) {
        $arra[] = $exp[$i];
        }
    }
    
    $arrayim = array_unique($arra);
    print_r($arrayim); 
    
    

    dene gör :)
    • nordstern adlı üyenin fotoğrafı nordstern
      Benim ihtiyacım olan gelen verileri ayrıştırmak değil. Sütunda tek veri varken birden fazla seçilen değeri aşağıdaki kod ile yazdırıyordum

      SELECT * FROM tablo WHERE sütun in ('.$listelenmesiistenenidler.')
      


      Ancak sütunlar birden fazla veri içerdiğinde bu kod işe yaramıyor. Sadece ilk değerleri arıyor, bu aşamada nasıl bir komut gireceğimi bilmiyorum.
      10 yıl önce yazılmış
    • xuma adlı üyenin fotoğrafı xuma
      Soruyu belki tam anlamamış olabilirim basit bir tablo örneği verirsen daha anlaşılabilir olabilir.Ama anladığım kadarıyla cevap;
      SELECT *
      FROM tablo
      WHERE FIND_IN_SET('ARANAN',sutun_adi);
      
      10 yıl önce yazılmış