• 29-11-2006, 15:09:52
    #1
    Arkadaşlar aşağıdaki kodlar la tablodan bilgileri çektiğimde linkli satır gelmiyor. Fakat distincti kaldırınca aynı isimde ki iki ver geliyor neden olduğunu anlamadım yardım edebilirmisiniz.
     <table width="372" border="1" align="center" cellpadding="0" cellspacing="0">
               <?
    		    $tablo = "SELECT DISTINCT modeli
    FROM `ilanlar` 
    WHERE markasi = '$marka'   ";
    			$sorgu = mysql_query($tablo);
    			while ($oku = mysql_fetch_row($sorgu)) {
    			$marka = $oku[1];
    			$model = $oku[2];
    			$ilantablo="select * from ilanlar where modeli='$model' and onay ='onayli'";
    			$ilansorgu=mysql_query($ilantablo);
    			$ilansay=mysql_num_rows($ilansorgu);
    			?>
    			<tr>
    			  <td width="163" align="left" valign="top" class="style5"><font face="sans-serif" size="-2" color="#7F99CC"><a href="ilan_list.php?marka=<? echo $marka?>&model=<? echo  $model ?>"><? echo ucfirst ($model) ?></a></font></td>
                  <td width="136" valign="top" class="style5"><? echo $ilansay ?></td>
                </tr>
    			<? } 
    			?>
              </table>
  • 29-11-2006, 15:40:30
    #2
    Üyeliği durduruldu
    distinct aynı şeyleri karşılaştırıp almamaya yarıyor
    $tablo = "SELECT DISTINCT modeli
    FROM `ilanlar`
    yerine
    $tablo = "SELECT *
    FROM `ilanlar`
    yazarak dene
  • 29-11-2006, 15:46:54
    #3
    o şekilde yazdığımda çalışıyor fakat aynı olan veriler geliyor. Yani Şöyle
    206 Özel üretim
    206 Özel Üretim
    106 GTI
    106 GTI
    206 GTI
    gibi ben bunaların
    206 özel üretim
    106 gtı şeklinde aynı olanların elenip sadece 1 tanesinin gelmesini istiyorum.
    Onun için distinct kullanıyorum
  • 29-11-2006, 16:18:34
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    "select Distinct * From...."
  • 29-11-2006, 20:01:31
    #5
    sorununuz tam olarak anlaşılamıyor. daha açık anlatırmısınız. ne yapmak istiyorsunuz tam olarak. ayrıca yukarıdaki arkadaşların yazdığı gibi * kullanmayın. tablo adını yazmanız daha uygundur.
  • 29-11-2006, 21:44:14
    #6
    Üyeliği durduruldu
    güvenlik açısından o tabloda bir şifre column u olduğunu snamıyorum
  • 29-11-2006, 22:48:30
    #7
    altayalp adlı üyeden alıntı: mesajı görüntüle
    sorununuz tam olarak anlaşılamıyor. daha açık anlatırmısınız. ne yapmak istiyorsunuz tam olarak. ayrıca yukarıdaki arkadaşların yazdığı gibi * kullanmayın. tablo adını yazmanız daha uygundur.
    tablo adlarını bilmediğimden dolayı ve arkadaşı uğraştırmamak için böyle yazdım, ayrıca bütün veriler alınacaksa o bölümden * olmasının hiçbir mahsuru yok, sadece bir iki veri alınacaksa o zaman adları yazılmalıdır, yani genel olarak * olması bir sorun oluşturmayacaktır, neden böyle bir yaklaşımda bulundunuz anlamış değilim... Arkadaşın verdiği kodlardan da tahmin edileceği üzere fazla veri alınmayacaktır dolayısıyla kasma gibi bir sorunda oluşturmaz...
  • 29-11-2006, 22:48:52
    #8
    arkdaşlar db den ilan verilmiş modelleri çekmek istiyorum. Tabiiki aynı isimli modeller var mesela 2 ayrı kişi de bmw m3 ilanı vermiş ben bunu select * fromla aldığımda sonuç
    2 tane bmw m3 geliyor. "select * from" yerine "select distinct modeli from" ile bunları eleyerek 1 tanesini listeleyim diyorum fakat hiç bir veri getirmiyor. Kullandığım kodlar
    <table width="372" border="1" align="center" cellpadding="0" cellspacing="0"> 
               <? 
                $tablo = "SELECT DISTINCT modeli 
    FROM `ilanlar`  
    WHERE markasi = '$marka'   "; 
                $sorgu = mysql_query($tablo); 
                while ($oku = mysql_fetch_row($sorgu)) { 
                $marka = $oku[1]; 
                $model = $oku[2]; 
                $ilantablo="select * from ilanlar where modeli='$model' and onay ='onayli'"; 
                $ilansorgu=mysql_query($ilantablo); 
                $ilansay=mysql_num_rows($ilansorgu); 
                ?> 
                <tr> 
                  <td width="163" align="left" valign="top" class="style5"><font face="sans-serif" size="-2" color="#7F99CC"><a href="ilan_list.php?marka=<? echo $marka?>&model=<? echo  $model ?>"><? echo ucfirst ($model) ?></a></font></td> 
                  <td width="136" valign="top" class="style5"><? echo $ilansay ?></td> 
                </tr> 
                <? }  
                ?> 
              </table>
  • 29-11-2006, 23:01:22
    #9
    NOKProduction adlı üyeden alıntı: mesajı görüntüle
    tablo adlarını bilmediğimden dolayı ve arkadaşı uğraştırmamak için böyle yazdım, ayrıca bütün veriler alınacaksa o bölümden * olmasının hiçbir mahsuru yok, sadece bir iki veri alınacaksa o zaman adları yazılmalıdır, yani genel olarak * olması bir sorun oluşturmayacaktır, neden böyle bir yaklaşımda bulundunuz anlamış değilim... Arkadaşın verdiği kodlardan da tahmin edileceği üzere fazla veri alınmayacaktır dolayısıyla kasma gibi bir sorunda oluşturmaz...
    illa sunucuyu yorması gerekmez. 7 sütunluk bir tablodan tek veta 2 sütunu kullanacaksam neden bütün verileri çekiyim? beni anlamamanızı anlayabilmiş değilim bende.
    DISTINCT tablo sutun yerine
    group by sutun olarak deneyebilirsin.