
kategori tablomdan kategorileri listeliyorum.

kategorinin üst kategorisinin adını nasıl alabilirim ?
| kategori üst kategori adı sorunu | 10 Mesajlar | 1.676 Okunma | ||


 
            $lim=10;
            #sayfa başı gösterilecek video limiti
            $goster=$s * $lim - $lim;
          $kategoriler=$db->prepare("SELECT * FROM kategori  ORDER BY ana_kategori_id ASC LIMIT :goster, :lim");
      
          
            $kategoriler->bindValue(":goster",(int) $goster, PDO::PARAM_INT);
            $kategoriler->bindValue(":lim", (int) $lim, PDO::PARAM_INT);
            $kategoriler->execute();
          if ($kategoriler->rowCount()){ ?>
              
              
                  # 
                  Kategori Adı 
                  Ana Kategori Adı 
                  Açıklama 
                  Durum 
                  Onay 
              
              
          
              foreach($kategoriler as $row){ ?>
            
            
                
                
                
                                        if ($row['ana_kategori_id']==0) {
                      echo("Üst Kategori");
                    }else{ 
                     // echo $row['kategori_adi'];
                    
                    /*
Fatal error: Cannot use object of type PDOStatement as array in C:\AppServ\www\vb2\panel\kategoriler.php on line 90
                     $k=$row['ana_kategori_id'];
                     echo $k; 
                     $sor=$db->prepare("SELECT * FROM kategori WHERE kategori_id=:k");
                     $sor->execute(array(':k' =>$k));
                     if ($sor->rowCount()) {
                     echo $sor['kategori_adi'];
                     }else{ 
                      echo('no');
                      } */
                    } 
                    ?>
                                   
                  
                        
    
                
                                                                                                                
        
        
        
            
            
                - 
                    Üyelik
                    01.02.2018
                
- 
                    Yaş/Cinsiyet
                    27 / E
                
- 
                    Meslek
                    Yazılım öğrencisi
                
- 
                    Konum
                    Antalya
                
                - 
                    Ad Soyad
                    O** Ş**
                
- 
                    Mesajlar
                    603
                
- 
                    Beğeniler
                    25 / 155
                
- 
                    Ticaret
                    2, (%100)
                
Tamamda sorun ne tam olarak?
                        
    
                    
                            Eğitimin pahalı olduğunu düşünüyorsanız, cehaletin bedelini hesaplayın.
                - 
                    Üyelik
                    01.12.2017
                
- 
                    Yaş/Cinsiyet
                    44 / E
                
- 
                    Meslek
                    ögrenci
                
- 
                    Konum
                    Karaman
                
                - 
                    Ad Soyad
                    Y** E**
                
- 
                    Mesajlar
                    66
                
- 
                    Beğeniler
                    14 / 15
                
- 
                    Ticaret
                    0, (%0)
                
yorum olarak duran satır hata veriyor.  echo $sor['kategori_adi']; satırında
Fatal error: Cannot use object of type PDOStatement as array in C:\AppServ\www\vb2\panel\kategoriler.php on line 90
resimde yuvarlak icindeki alana 1 2 yerine üst kategorinin adını yerli yabancı yazmaya calısıyorum.
                        
    
                
                                                        
                                                                                                    
        
        
        
            
            
                - 
                    Üyelik
                    01.02.2018
                
- 
                    Yaş/Cinsiyet
                    27 / E
                
- 
                    Meslek
                    Yazılım öğrencisi
                
- 
                    Konum
                    Antalya
                
                - 
                    Ad Soyad
                    O** Ş**
                
- 
                    Mesajlar
                    603
                
- 
                    Beğeniler
                    25 / 155
                
- 
                    Ticaret
                    2, (%100)
                
if ($row['ana_kategori_id']==0) {echo("Üst Kategori");}
Olan yeri alttaki kodlarla değiştir.
if ($row['ana_kategori_id']==0) {echo("Üst Kategori");}elseif ($row['ana_kategori_id']==1) {echo("Yerli Kategori");}elseif ($row['ana_kategori_id']==2) {echo("Yabancı Kategori");}
                - 
                    Üyelik
                    01.12.2017
                
- 
                    Yaş/Cinsiyet
                    44 / E
                
- 
                    Meslek
                    ögrenci
                
- 
                    Konum
                    Karaman
                
                - 
                    Ad Soyad
                    Y** E**
                
- 
                    Mesajlar
                    66
                
- 
                    Beğeniler
                    14 / 15
                
- 
                    Ticaret
                    0, (%0)
                
teşekkür ederim cevabınız mantıklı.
Ama daha sonradan üst kategori eklemek istersem diye daha dinamik olsun diye düşünmüştüm.
aynı tablo icinde inner join kullanılabilir mi?
                        
    
                
                                                                                                                
        
        
        
            
            
                - 
                    Üyelik
                    01.02.2018
                
- 
                    Yaş/Cinsiyet
                    27 / E
                
- 
                    Meslek
                    Yazılım öğrencisi
                
- 
                    Konum
                    Antalya
                
                - 
                    Ad Soyad
                    O** Ş**
                
- 
                    Mesajlar
                    603
                
- 
                    Beğeniler
                    25 / 155
                
- 
                    Ticaret
                    2, (%100)
                
Direkt tablodan isimi çek neden değerler olarak çekiyorsun ki ?
İşlemi vt tarafında yapmalısın daha mantıklı ve kolay olur.
Tablondaki ana_kategori_id isimli sütunun türünü varchar(255) olarak değiştir, verileri Yerli Kategori, Yabancı Kategori şeklinde gir ve direkt olarak çek.
                        
    
                    
                            Eğitimin pahalı olduğunu düşünüyorsanız, cehaletin bedelini hesaplayın.
                    
                        
                                                                                                                
        
        
        
            
            
                - 
                    Üyelik
                    01.02.2018
                
- 
                    Yaş/Cinsiyet
                    27 / E
                
- 
                    Meslek
                    Yazılım öğrencisi
                
- 
                    Konum
                    Antalya
                
                - 
                    Ad Soyad
                    O** Ş**
                
- 
                    Mesajlar
                    603
                
- 
                    Beğeniler
                    25 / 155
                
- 
                    Ticaret
                    2, (%100)
                
İllaki php bazlı olsun istersen.
Kategorileri çek arraya at ana_kategori_id'den gelen veriyle istediğini arraydan alabilirsin.
$kategoriler   = array("Yerli Kategori","Yabanci Kategori"); // bu arrayı örnek olarak oluşturdum senin oluşturmana gerek yok vt'den kategoriler sütünunu çekmen yeterli.
echo $kategoriler[$row['ana_kategori_id']];
Ben sana bir örnek yaptım şöyle;
Kod kısmı: https://prnt.sc/keatmi
Tarayıcı çıktısı: http://prntscr.com/keau2s
                        
    
                    
                            Eğitimin pahalı olduğunu düşünüyorsanız, cehaletin bedelini hesaplayın.
                    
                        
                                                                                                                
        
        
        
            
            
                - 
                    Üyelik
                    01.12.2017
                
- 
                    Yaş/Cinsiyet
                    44 / E
                
- 
                    Meslek
                    ögrenci
                
- 
                    Konum
                    Karaman
                
                - 
                    Ad Soyad
                    Y** E**
                
- 
                    Mesajlar
                    66
                
- 
                    Beğeniler
                    14 / 15
                
- 
                    Ticaret
                    0, (%0)
                
bu şekilde çözüldü. epey pratik yapmam lazım sanırım :) tşkler.
 $k=$row['ana_kategori_id'];
                     $sor=$db->prepare("SELECT kategori_adi FROM kategori WHERE kategori_id=:id");
                     $sor->execute(array(':id' => $k));
                     $yazdir=$sor->fetch(PDO::FETCH_ASSOC);
                     
                     if ($sor->rowCount()) {
                      echo ($yazdir['kategori_adi']);
                     }else{ 
                      echo('no');
                      } 
[/QUOTE]
                        
    
                
                                                                                                                
        
        
        
            
            
                - 
                    Üyelik
                    10.01.2014
                
- 
                    Yaş/Cinsiyet
                    48 / E
                
- 
                    Meslek
                    webmaster
                
- 
                    Konum
                    Düzce
                
                - 
                    Ad Soyad
                    Ç** Ç**
                
- 
                    Mesajlar
                    240
                
- 
                    Beğeniler
                    70 / 70
                
- 
                    Ticaret
                    5, (%100)
                
yeni böyle çözülsün tabiki o üstteki neydi ? demek ki ben bilmiyorum diye cevap yazmadım yeminle
yav basit olan varken öyle kod yazıyorsunuz ki , bakıyorum anlamak mümkün değil.
                        
    
                
                                                    
        
                                    
                    
    
    
    
    
            
        
    
    
        
                            
                                                    
                                    
                Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)