Şimdi Ara

PHP | Select List'e Veri Tabanından Veri Çekmek

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
13
Cevap
0
Favori
7.148
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • <select name="kategoriler" size="1">
    <?php
    $sql="SELECT * FROM kategoriler WHERE id='".$row_haber['kategori_id']."'";
    $result=mysql_query($sql);
    while($kategori=mysql_fetch_array($result)) { ?>

    <?php } ?>
    </select>

    Arkadaşlar iki tablom var haberler ve kategoriler.

    $row_haber : haberlerin yer aldığı sorgu kısmı, kategori_id'sini buradan alıyor.

    haberler tablosunda kategori_id'si var. Kategorilerin id'sinden çekiyor. Sadece seçilen geliyor. Doğru çalışıyor fakat diğer kategorileri listelemiyor. Sadece seçilen haberin kategori adını gösteriyor.

    Yardımcı olursanız sevinirim, teşekkürler..



    < Bu mesaj bu kişi tarafından değiştirildi O-Zee AKA Contecau -- 13 Mayıs 2014; 23:36:08 >







  • O-Zee AKA Contecau kullanıcısına yanıt
    $sql="SELECT * FROM kategoriler WHERE id='".$row_haber['kategori_id']."'";


    $sql="SELECT * FROM kategoriler order by id DESC"; bunu kullan.
  • yalnız şunu belirtmedim bu yazdığım kısım haber güncelle kısmı yani haberin id'sine göre getirmek durumunda sanıyorum. yukarıda belirttim ama tekrar belirteyim sorguyu o şekil de yazdığım zaman eklenirken hangi kategori seçilmişsse onu getiriyor fakat güncellede değiştirmek istediğimde diğer kategoriler çıkmıyor sadece o ekle kısmında girilen kategori görünüyor.



    < Bu mesaj bu kişi tarafından değiştirildi O-Zee AKA Contecau -- 16 Mayıs 2014; 22:09:44 >
  • O-Zee AKA Contecau kullanıcısına yanıt
    Anladığımı söylüyorum sana.

    haber düzenle dedğin zaman haberin kategori seçimi yerinde önceden seçmiş olduğun kategori çıkıyor değil mi ?


    Örneğin


    Kategori : Seçiniz ^

    Kategori : Seçiniz
    DenemeKategori


    Sadece seçmiş olduğun çıkıyor ancak sen hepsinin çıkmasını istiyorsun ki kategorisini değiştire bilesin.


    <?php
    $sorgu = mysql_fetch_array(mysql_query("SELECT * FROM kategoriler WHERE id='".$row_haber['kategori_id']."' LIMIT 1"));
    $kategoriid = $sorgu['kategori_id'];
    $kategoriadi = $sorgu['kategori_adi'];
    ?>

    <select name="kategoriler" size="1">
    <option value="<?ph echo $kategoriid; ?>" selected><?ph echo $kategoriadi; ?></option>

    <?php
    $sql = mysql_query("SELECT * FROM kategoriler ORDER BY kategori_adi ASC");
    while($row=mysql_fetch_array($sql)){
    $kategori_id = $row["kategori_id"];
    $kategori_adi = $row["kategori_adi"];
    ?>

    <option value="<?php echo $kategori_id; ?>"><?php echo $kategori_adi; ?></option>
    <?php } ?>
    </select>


    Bu şekilde öncelikle seçmiş olduğun kategori adını ve id sini çekiyor ve seçili olarak işaretliyor.

    sonrasında ise altına diğer kategorileri adlarını ve id lerini listeliyor.




  • zahmet edip yardımcı olduğun için teşekkür ederim, çalışıyor:)
  • @aksoydesign usta yeni konu açmak istemedim bir sorunum daha var, yardımcı olursan sevinirim.

    ürün ekleyeceğim veri tabanına fakat ürün bilgileri ayrı tabloda, alış satış fiyatı ayrı tabloda. Tablo adlarım şöyle, ürünler ve ürünalıssatıs. Yapılarını aktarıyorum

    ---ÜRÜNLER ---
    ID
    TurID
    Urun_Marka
    Urun_Model
    Ozellik
    Resim1
    Resim2
    Resim3
    Stok

    ----ÜRÜNALIŞSATIŞ---
    ID
    UrunID
    Alis_Fiyati
    Satis_Fiyati

    Dreamweaver'dan hazır olarak insert record yapıyorum fakat müdahale etmem gerekti çünkü alış ve satış fiyatını diğer tabloya kayıt etmesi gerekiyor ürün id'sine göre şöyle bir sorgu yazdım fakat çalışmadı.

    $insertSQL = sprintf("INSERT INTO urunler,urunalissatis as alsat (TurID,FirmaID, Urun_Marka, Urun_Model, Ozellik, Resim1, Resim2, Resim3,alsat.Satis_Fiyati,alsat.Alis_Fiyati, Stok) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)", 
    GetSQLValueString($_POST['tur'], "int"),
    GetSQLValueString($_POST['firma'], "int"),
    GetSQLValueString($_POST['marka'], "text"),
    GetSQLValueString($_POST['model'], "text"),
    GetSQLValueString($_POST['ozellik'], "text"),
    GetSQLValueString($yeni_isim, "text"),
    GetSQLValueString($yeni_isim2, "text"),
    GetSQLValueString($yeni_isim3, "text"),
    GetSQLValueString($_POST['satisfiyat'], "int"),
    GetSQLValueString($_POST['alisfiyat'], "int"),
    GetSQLValueString($_POST['stok'], "int"));




  • O-Zee AKA Contecau kullanıcısına yanıt
    ilk olarak bilmem gereken ürün bilgileri normal şekilde urunler tablona kayıt oluyor mu ?
    oluyordur muhtemelen.

    aynı şekilde bir adet daha insert komutu kullanırsın


    if($insertSQL){
    $id = mysql_insert_id();
    $satisfiyat = $_POST['satisfiyat'];
    $alisfiyat= $_POST['alisfiyat'];

    $ekle = mysql_query("INSERT INTO urunalissatis (UrunID, Alis_Fiyati, Satis_Fiyati) values ('$id ', '$alisfiyat', '$satisfiyat')");

    }


    şayet insertSQL gerçeklemiş ise şunları ya dedik.

    insert ettiğin verinin id deerini mysql_insert_id() ile çektik ve bunu $id değişkenine atadık.

    alış fiyat satış fiyatını da posttan gelen değerleri değişkene atadık.

    sonrasında ise urunalissatis tablosuna bu bilgileri insert ettirdik.


    verdiğin kodu $insertSQL sadece urunler tablona insert edecek şekilde ayarla. sonrasında bu kodu kullan bunuda bunu dw da insert record a çevirebilirsin.



    < Bu mesaj bu kişi tarafından değiştirildi aksoydesign -- 18 Mayıs 2014; 23:00:17 >




  • Yapay Zeka’dan İlgili Konular
    php database veri eklemede hata
    geçen yıl önce açıldı
    Daha Fazla Göster
  • Teşekkürler oldu, elinize sağlık. @aksoydesign
  • Rica ederim kolay gelsin
  • Hocam @aksoydesign , sizi tekrar rahatsız ediyorum.

    Yorumlar kısmını yazmaya çalışıyorum fakat kafasına göre yorum atıyor, sayfa yenilenince ekleniyor, yazdığım yorum hemen görünmüyor tekrar yazdığımda görünüyor açıkçası deneme yanılmayla yazmaya çalıştım internetten,arkadaşlardan. Yorum yapan kullanıcının id'sini almak istiyorum veri tabanına kayıt için fakat alamadım sessionla ismini yazdırdım. Kodlar şu şekil de ;

     <div id="comments"> 


    <h2>Yorumlar</h2>
    <ul class="commentlist">
    <?php

    $haberr=$_GET["haber"];
    $sql= "Select * from yorumlar where haber_id=".$haberr."";
    $yorum_cek = mysql_query($sql);
    while ( $yorum = mysql_fetch_array($yorum_cek) ) {

    ?>
    <li class="comment_odd">
    <div class="author"><span class="name"><?php echo $_SESSION['MM_Username']; ?></span> <span class="wrote">yorumu:</span></div>
    <div class="submitdate"><?php echo $yorum['tarih']; ?></div>
    <p><?php echo $yorum['yorum']; ?></p>
    </li>
    <?php } ?>
    </ul>
    </div>


    <?php

    if(isset($_SESSION['MM_Username'])){ ?>

    <h2>Yorum Ekle</h2>
    <div id="respond">

    <?php
    $haber_id=$_GET["haber"];
    $haber_ekle="INSERT INTO yorumlar (haber_id,kullanici_id,yorum) VALUES ('".$haber_id."','".$_SESSION['MM_Username']."','".$_POST['yorumm']."')";
    mysql_query($haber_ekle);

    ?>

    <form name="yorum" action="haberdetay.php?haber=<?php echo $haber_id; ?>" method="POST">

    <p>
    <textarea name="yorumm" id="yorumm" cols="20%" rows="5"></textarea>
    <label for="comment" style="display:none;"><small>Yorum : </small></label>
    </p>
    <p>
    <input name="ekle" type="submit" id="ekle" value="Yorum Ekle" />
     
    <input name="temizle" type="reset" id="temizle" tabindex="5" value="Temizle" />
    </p>
    <input type="hidden" name="MM_insert" value="yorum" />

    </form>

    <?php }else { echo 'Yorum yapmak için <a data-test="test" rel="nofollow" style="word-wrap: break-word; text-decoration: underline;" target="_blank" onclick="return dhExternalLinkRedirect(this)" href="/ExternalLinkRedirect?module=pgdcode&messageId=92113616&url=kayitol.php" data-href="kayitol.php">üye olunuz</a>...'; ?>

    </div>


    <?php } ?>
    </div>


    Yorumlar - Veritabanı

    id
    haber_id
    kullanici_id
    yorum
    tarih




  • O-Zee AKA Contecau kullanıcısına yanıt
      
    <div id="comments">


    <h2>Yorumlar</h2>
    <ul class="commentlist">
    <?php

    $haberr=$_GET["haber"];
    $sql= "Select * from yorumlar where haber_id=".$haberr."";
    $yorum_cek = mysql_query($sql);
    while ( $yorum = mysql_fetch_array($yorum_cek) ) {

    ?>
    <li class="comment_odd">
    <div class="author"><span class="name"><?php echo $_SESSION['MM_Username']; ?></span> <span class="wrote">yorumu:</span></div>
    <div class="submitdate"><?php echo $yorum['tarih']; ?></div>
    <p><?php echo $yorum['yorum']; ?></p>
    </li>
    <?php } ?>
    </ul>
    </div>


    <?php

    if(isset($_SESSION['MM_Username'])){ ?>

    <h2>Yorum Ekle</h2>
    <div id="respond">

    <?php
    $id = $_POST['id'];
    $yorum_ekle=mysql_query("INSERT INTO yorumlar (haber_id,kullanici_id,yorum) VALUES ('".$id."','".$_SESSION['MM_Username']."','".$_POST['yorumm']."')");

    if($yorum_ekle) { echo 'yorumunuz eklenmiştir'; } else { echo 'bir hata oluştur malesef'; }

    ?>

    <form name="yorum" action="haberdetay.php?haber=<?php echo $haber_id; ?>" method="POST">
    <input type="hidden" name="id" value="<?php echo $haberr; ?>" />
    <p>
    <textarea name="yorumm" id="yorumm" cols="20%" rows="5"></textarea>
    <label for="comment" style="display:none;"><small>Yorum : </small></label>
    </p>
    <p>
    <input name="ekle" type="submit" id="ekle" value="Yorum Ekle" />

    <input name="temizle" type="reset" id="temizle" tabindex="5" value="Temizle" />
    </p>
    <input type="hidden" name="MM_insert" value="yorum" />

    </form>

    <?php }else { echo 'Yorum yapmak için <a data-test="test" rel="nofollow" style="word-wrap: break-word; text-decoration: underline;" target="_blank" onclick="return dhExternalLinkRedirect(this)" href="/ExternalLinkRedirect?module=pgdcode&messageId=92136822&url=kayitol.php" data-href="kayitol.php">üye olunuz</a>...'; ?>

    </div>


    <?php } ?>
    </div>


    Bir dene bakalım Olacak mı




  • Hocam teşekkür ediyorum fakat yorum ekle kısmının üstünde yorumunuz eklenmiştir yazısı geliyor bir de sessionla olmayacak galiba çünkü her başka bir kullanıcı ile girdiğimde onun adını gösteriyor yorumu yazan kişinin orada
  • $_SESSION['MM_Username'] yanlış olmuş tabi. O esnada giriş yapan kullanıcının adını gösteriyor. İkinci bir query daha yazman lazım. İlgili yorumdaki kullanıcı_id ile kullanıcı tablondan bilgi çekmen lazım ya da şu şekilde left joinle yazabilirsin:

    $sql= "Select * from yorumlar left join kullanicilar on yorumlar.kullanici_id = kullanicilar.id where haber_id=".$haberr."";

    Yorum kaydetme kısmında da post etse de etmese de query çalıştırılıyor.

    Oraya da şu şekilde bir kontrol koyabilirsin. Yorum post edilmiş mi edilmemiş mi kontrol edip ona göre kayıt işlemi yaparsın.

    <?php
    if(isset($_POST['yorumm'])){
    $id = $_POST['id'];
    $yorum_ekle=mysql_query("INSERT INTO yorumlar (haber_id,kullanici_id,yorum) VALUES ('".$id."','".$_SESSION['MM_Username']."','".$_POST['yorumm']."')");

    if($yorum_ekle) { echo 'yorumunuz eklenmiştir'; } else { echo 'bir hata oluştur malesef'; }
    }

    ?>




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.