• 13-07-2015, 16:08:04
    #1
    Merhaba.
    Aşağıdaki kod yardımı ile mssql veritabanından bilgiler tablosunu dökebiliyorum. Fakat bilgiler tablosu içerisinde yer alan uret satırında eğer ki a1 - a2 - a3 geçiyorsa bilgiler tablosu içerisindeki uret - veri - yesil - beyaz satırlarını listeletmesini nasıl sağlayabilirim?

    Teşekkürler

    <?php
    $baglanti = odbc_connect('DRIVER={SQL Server};SERVER=FibServer;DATABASE=db','administrator','123456');
    
    
    $sorgu = odbc_exec($baglanti,"select * from bilgiler");
    
    while($kayit = odbc_fetch_array($sorgu)){
        echo $kayit["yazi"]."<br>";
    }
     
    
    odbc_close($sorgu);
    ?>
    İlginiz için teşekkür ederim.
  • 14-07-2015, 07:14:38
    #2
    Sadece a1, a2, a3 gecenleri listeleyeceksen

    SELECT * FROM bilgiler WHERE uret IN ('a1', 'a2', 'a3')

    yok hepsini listelicem sadece a1, a2, a3 gecenlere farkli islem uygulicam diyorsan senin kodu soyle degistirebiliriz

    <?php
    $baglanti = odbc_connect('DRIVER={SQL Server};SERVER=FibServer;DATABASE=db','administrator','123456');
    
    
    $sorgu = odbc_exec($baglanti,"select * from bilgiler");
    
    while($kayit = odbc_fetch_array($sorgu)){
        //if ( ($kayit['uret'] == 'a1') || ($kayit['uret'] == 'a2') || ($kayit['uret'] == 'a3') ) { //uret a1, a2 ya da a3'e esit ise. (Tam esitlik istiyorsan bunun onundeki commenti kaldir alttaki if'i commentle')
        if ( (strpos($kayit['uret'], 'a1')) || (strpos($kayit['uret'], 'a2')) || (strpos($kayit['uret'], 'a3')) ) { //uret icinde a1, a2 ya da a3 geciyorsa
            echo $kayit['uret'];
            echo $kayit['veri'];
            echo $kayit['yesil'];
            echo $kayit['beyaz'];
            
        }
        else { //yukardaki kondisyonlarin disinda kaliyorsa ne yapsin.
            echo $kayit["yazi"]."<br>";
        }
        
    }
    
    odbc_close($sorgu);
    ?>
    yukarda 2 adet if kondisyonu var. biri tam esitlik icin digeri de icinde geciyorsa. hangisi lazimsa onu kullan