• 10-07-2013, 18:06:47
    #1
    Merhaba
    Bir sorguda aynı id'ye sahip birden fazla kaydı getirmek istiyorum şunu nasıl yaparım.

    $duzenle= mysql_query("SELECT * FROM cevap WHERE cevapid='$cevapid_gelen'");

    Cevap tablosunda konuya ait 2 adet seçenek vardır. Örneğin konuid'si 5 olan 2 adet satır bulunmaktadır. Yukarıdaki sorgu sadece ilk satırı bulup getiriyor.
    2 satırı da textbox'ın value alanında kullanmak istiyorum bunu nasıl yaparım? Kolay gelsin.


    phpmyadmin panelinde "SELECT * FROM cevaplar WHERE konuid = 42" yazınca 2 satır döndürüyor. Yukarıdaki mysql_query'de sadece ilk satır geliyor. Ben bütün satırları listelemek istiyorum. İyi forumlar.
  • 10-07-2013, 19:56:35
    #2
    Birden fazla kayıtı listelemek için sorguyu döngüye sokmanız gerekmektedir. Yani ;
    <?php 
    $dQuery= mysql_query("SELECT * FROM cevap WHERE cevapid='$cevapid_gelen'");
    while($dRow = mysql_fetch_array($dQuery)) {
     // Burada işlemler yapılacak.
    }
    ?>
    Öncelikle şu mantığı kavramanız gerekli mysql_query ile veritabanında sorgulama işlemi yaparsınız ve bunun sonucunda size bir cevap döner. Fakat bu cevaba erişmek için sadece mysql_query ile sorgu yapmamanız yeterli değil. Bu cevabı almak için yani, sorgu sonucu dönen değerleri getirmek için mysql_fetch fonksiyonları mevcuttur. Ben bu örnekte mysql_fetch_array olanını kullandım. While döngüsünü birden fazla değer geldiğinde bu değerlerin hepsine erişebilmek için kullandık.
  • 10-07-2013, 22:44:28
    #3
    Merhaba sorunum bu değil. Bu şekilde yapınca mysql_fetch_array'da sutunlar tutuluyor. Id'si 47 olan 2 satır var bende onların ikisini de listelemek istiyorum.

    phpadmin panelde şu şekilde bir sorgu yapılında SELECT * FROM cevaplar WHERE soruid = 47 soruid'si 47 olan bütün satırlar listeleniyor (2 adet satır var) ancak php mysql sorguda yazarken sadece ilk satırı bulup getiriyor.
    2 satırı da textbox'ın value alanında kullanmak istiyorum bunu nasıl yaparım? Kolay gelsin.
  • 10-07-2013, 23:55:50
    #4
    NepenTheS adlı üyeden alıntı: mesajı görüntüle
    Birden fazla kayıtı listelemek için sorguyu döngüye sokmanız gerekmektedir. Yani ;
    <?php 
    $dQuery= mysql_query("SELECT * FROM cevap WHERE cevapid='$cevapid_gelen'");
    while($dRow = mysql_fetch_array($dQuery)) {
     // Burada işlemler yapılacak.
    }
    ?>
    Öncelikle şu mantığı kavramanız gerekli mysql_query ile veritabanında sorgulama işlemi yaparsınız ve bunun sonucunda size bir cevap döner. Fakat bu cevaba erişmek için sadece mysql_query ile sorgu yapmamanız yeterli değil. Bu cevabı almak için yani, sorgu sonucu dönen değerleri getirmek için mysql_fetch fonksiyonları mevcuttur. Ben bu örnekte mysql_fetch_array olanını kullandım. While döngüsünü birden fazla değer geldiğinde bu değerlerin hepsine erişebilmek için kullandık.
    arkadaş burda gereken cevabı vermiş ek olarak.

    <?php 
    $content = ' ';
    $dQuery= mysql_query("SELECT * FROM cevap WHERE cevapid='$cevapid_gelen'");
    while($dRow = mysql_fetch_array($dQuery)) {
    $content.=$dRow['sütun_adi'];
    }
    
    ?>
    <textarea><?php echo $content;?></textarea>