• 21-10-2009, 17:33:18
    #1
    Alıntı
    <?
    include "config.php"
    ?>
    <?php
    $sorgu = mysql_query("SELECT * FROM 4images_images where cat_id='1' ORDER BY image_name DESC LIMIT 8");
    $r = 0;
    echo "<table align=\"center\" width=\"100%\" class=\"tablebg\">\n";
    while($s = mysql_fetch_array($sorgu)) {
    if ($r % 4 == 0) { echo "<tr>\n"; }
    ?>
    <td align="center" bgcolor="#2D3339"><br /><a href="details.php?image_id=<? echo ($s[image_id]) ?>"><font color="#999999">&nbsp;<img src="data/media/<? echo ($s[cat_id]) ?>/<? echo ($s[image_thumb_file]) ?>" width="100" border="0" height="74" alt=""/></a><br /><br /><a href="details.php?image_id=<? echo ($s[image_id]) ?>"><font color="#999999" size="2"><b><? echo substr(strip_tags($s['image_name']),0,50);?></b></font></a><br /><br /></td>
    <?
    if ($r % 4 == 3) { echo "</tr>\n"; }
    $r++;
    }
    if ($r % 4 < 3) { echo "</table>\n"; }
    ?>
    Arkadaşlar elimde şöyle bir kod var.
    cat_id='1' den istediğim veriyi çektiriyorum.Ancak
    benim istediğim 2,3,4,5,6,9,44, nolu kategorilerdende çektirmesi.
    denediğim yollar:
    where cat_id='1,2,3,4,5,6,9,44'
    where cat_id='1' and cat_id='2' ....
    bu konuda nasıl bi çözüm yolu izlemeliyim yardımlarınızı bekliyorum
  • 21-10-2009, 17:53:10
    #2
    where cat_id='1' and '2' and '3'
    diye denedin mi? Belki böyle olur..
  • 21-10-2009, 17:59:16
    #3
    and yerine or denedinmi?
  • 21-10-2009, 18:00:26
    #4
    doğru
    where id = '1' or '2';
    bu şekilde oluyordu sanırım.
  • 21-10-2009, 18:09:38
    #5
    cocainer adlı üyeden alıntı: mesajı görüntüle
    where cat_id='1' and '2' and '3'
    diye denedin mi? Belki böyle olur..
    sadece
    ilk yazdığım numaranın verilerini alıyor
    cat_id='1' and '2' and '3'
    yazarsam 1 i

    cat_id='2' and '1' and '3'
    yazarsam 2 yi


    şu gruplama vardı
    tam hatırlamıyorum ama
    $grup = 1,3,5,6,7,8
    deyip
    where $grup gibi bişey vardı.tam anlatamadm ama
  • 21-10-2009, 18:31:20
    #6
    cat_id IN (2,3,1)


    sorun çözüldü arkadaşlar
  • 22-10-2009, 09:19:32
    #7
    Üyeliği durduruldu
    SacmaSapan adlı üyeden alıntı: mesajı görüntüle
    cat_id IN (2,3,1)
    sorun çözüldü arkadaşlar
    in deyimini oluşturuken implode fonksiyonunu kullanabilirsiniz
    $idler = array(2,3,1);
    
    $sql = "where cat_id in (" .  implode(","$idler). ")";
    gibi
  • 22-10-2009, 09:47:27
    #8
    between'de kullanılabilir. "between 1 and 5" gibi.
  • 22-10-2009, 11:24:19
    #9
    sdemirkeser adlı üyeden alıntı: mesajı görüntüle
    in deyimini oluşturuken implode fonksiyonunu kullanabilirsiniz
    $idler = array(2,3,1);
    $sql = "where cat_id in (" .  implode(","$idler). ")";
    gibi
    evet bu daha çok işime yarayacak.


    between ile yapamam çünkü 1 ile 5 arasındakiler ama 56 ve 98 inci kategori de olacağından onunla yapılamaz