Arama butonu
Bu konudaki kullanıcılar: 1 misafir
12
Cevap
7258
Tıklama
0
Öne Çıkarma
PHP | Select List'e Veri Tabanından Veri Çekmek
O
11 yıl
Teğmen
Konu Sahibi

<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)) { ?>
<option value="<?php echo $row_haber['kategori_id']; ?>"><?php echo $kategori['kategori_adi']; ?></option>
<?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..

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





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

A
11 yıl
Yüzbaşı

$sql="SELECT * FROM kategoriler WHERE id='".$row_haber['kategori_id']."'";


$sql="SELECT * FROM kategoriler order by id DESC"; bunu kullan.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @O-Zee AKA Contecau
O
11 yıl
Teğmen
Konu Sahibi

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 >
Bu mesaja 1 cevap geldi.
A
11 yıl
Yüzbaşı

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.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @O-Zee AKA Contecau
O
11 yıl
Teğmen
Konu Sahibi

zahmet edip yardımcı olduğun için teşekkür ederim, çalışıyor:)


Bu mesaja 1 cevap geldi.
O
11 yıl
Teğmen
Konu Sahibi

@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"));


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @aksoydesign
A
11 yıl
Yüzbaşı

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 >


Bu mesajda bahsedilenler: @O-Zee AKA Contecau
O
11 yıl
Teğmen
Konu Sahibi

Teşekkürler oldu, elinize sağlık. @aksoydesign




Bu mesajda bahsedilenler: @aksoydesign
A
11 yıl
Yüzbaşı

Rica ederim kolay gelsin



O
11 yıl
Teğmen
Konu Sahibi

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


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @aksoydesign
A
11 yıl
Yüzbaşı

  
<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ı


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @O-Zee AKA Contecau
O
11 yıl
Teğmen
Konu Sahibi

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


Bu mesaja 1 cevap geldi.
T
11 yıl
Er

$_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'; }
}

?>



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.