Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

Sorgu içinde dizi değişlen kullanma

Konu, 'Veritabanları' kısmında nihal tarafından paylaşıldı.

  1. nihal

    nihal Aktif Üye

    Kayıt:
    8 Ocak 2003
    Mesajlar:
    286
    Beğenilen Mesajlar:
    0
    Sorgu içinde dizi değişken kullanma

    Merhaba arkadaşlar,

    benim formdan aldığım bir dizi değişkenim var ve benim bu diziyi sorgu içinde kullanmam, aradığım değerin bulunup bulunmadığını kontrol edip ona göre işlem yapamam gerekiyor. Ama bunu kullanınca Array.. şeklinde bir hata veriyor.

    Yani anladığım kadarıyla böyle bir kullanıma izin vermiyor..

    Ben böyle bir sorgu oluşturamaz mıyım? Böyle bir kullasnımın olması gerekir..
    yapısına benzer şekilde
    Çünkü Select ........... in (Select.....)

    $sql_odalar="Select OTEL_ODA_NO from OTEL_ODA where OTEL_NO=$otel_no and AD not in $odalar";

    şeklinde.. ama olmuyor.. bişey mi eksik...
    $odalar yerine $odalar[] denedim .. olmadı..
     
    Son düzenleme yönetici tarafından yapıldı: 9 Şubat 2003
  2. turker

    turker Agresif Üye

    Kayıt:
    19 Temmuz 2002
    Mesajlar:
    5,988
    Beğenilen Mesajlar:
    0
    aklıma gelen tek şey for döngüsünü kullanarak hangi selectin seçildiğini bulabilirsin ama daha kolay bir yolu vardır belkide. aslında tam olarak ne demek istediğini de anlayamadım ama belki bu biraz fikir verir.

    //selectlerin odalar[1],odalar[2] şeklinde yazıldığını düşünerek bu kodu yazıyorum.
    $toplam_select_sayisi=10;
    $sorgu="";
    for ($i=0;$i<=$toplam_select_sayisi;$i++) {

    $sql=$sql_odalar="Select OTEL_ODA_NO from OTEL_ODA where OTEL_NO=$otel_no and AD not in $odalar[$i]";
    if ($sql) { $sorgu == $sql; }
    }
    mysql_query($sorgu);
     
  3. mkarabulut

    mkarabulut Misafir

    Öncelikle $odalar array değişkenin içindeki değerleri SQL 'in anlayacağı ('1','2','6') gibi bir formata çevirmen gerekiyor..

    Yani
    Kod:
    $sqlStr="'" . implode("','" ,$odalar) . "'";
    
    Daha sonra sorguna katabilirsin
    Kod:
    $sql_odalar="Select OTEL_ODA_NO from OTEL_ODA where OTEL_NO=$otel_no and AD not in ($sqlStr)";
    
    Kolay gelsin
     
  4. nihal

    nihal Aktif Üye

    Kayıt:
    8 Ocak 2003
    Mesajlar:
    286
    Beğenilen Mesajlar:
    0
    teşekkür ederim arkadaşlar...
    ikincisi benim aradığım çözüm ..
    bir bakalım şimdi ..
    :super:
     
  5. LoS.ToF

    LoS.ToF Daimi Üye

    Kayıt:
    11 Ağustos 2002
    Mesajlar:
    1,088
    Beğenilen Mesajlar:
    0
    Meslek:
    PHP Developer
    Şehir:
    Antalya
    sanırım bu php ye giriyor ?