• 07-10-2009, 16:47:14
    #1
    Merhabalar arkadaşlar sorum şöyle ;

    göster fieldım var ve bu field sadece 0 ve 1 değerleri alıyor.
    php ile veritabanından veri çekerken goster fieldındaki ilk 0 olanları alsın , daha sonra hemen arkasından 1 leri ekrana yazdırsın.

    Böyle bir sistem i nasıl yazarım ?

    Yardım eden herkese teşekkürler..
  • 07-10-2009, 16:52:36
    #2
    $b0 =  mysql_query("select * from tablon where deger='0'"); // degeri sıfır olanları cektik ve $b0 degişkenine atadık.
    while ($yaz = mysql_fetch_array($b0)) {
    echo "$yaz[baslik]"."<br/>";
    }
    
    $b1 =  mysql_query("select * from tablon where deger='1'"); // degeri 1 olanları cektik ve $b1 degişkenine atadık.
    while ($yaz = mysql_fetch_array($b1)) {
    echo "$yaz[baslik]"."<br/>";
    }
    Bunu ard arda koyarsan istediğin sonuc cıkacaktır diye umuyorum. Aklıma şu an gelen en basit yol bu
  • 07-10-2009, 17:19:19
    #3
    ilginize teşekkür ederim bende dediğiniz gibi düşündüm ama farklı bi fonksiyon olabilir diye sordum yani if 0 { yaz } else {yaz } gibi tekrar teşekkürler
  • 07-10-2009, 17:21:43
    #4
    if kontrolu yapabilmeniz için bir veri girmeniz gerekiyor. Yani göster kısımında kullanıcının secebilecegi iki secenek olmalı ki bu kontrolü kullanasınız. En nihayetinde bu olsa bile sonuc olarak mecbur bu sql sorgularını yazmak zorundasınız.
  • 07-10-2009, 17:43:02
    #5
    samyeli80 in dediği bence de daha mantıklı. 2 sorgu göndermeye gerek yok. order by ile çekilir. ilk gelen değer zaten 1 diğerleri 0 olur .
  • 07-10-2009, 17:51:38
    #6
    evet daha mantıklı ama 0 ve 1 leri farklı limitlemem gerekiyor
  • 07-10-2009, 21:17:17
    #7
    Üyeliği durduruldu
    union ile birleştirebilirsiniz
    mysql_query("select * from tablon where deger='0' limit 10 union all select * from tablon where deger='1' limit 10"); 
    while ($yaz = mysql_fetch_array($b0)) {
    echo "$yaz[baslik]"."<br/>";
    }
  • 08-10-2009, 16:33:58
    #8
    saolun hocam bende bunu arıyodum teşekkürler