• 03-12-2013, 18:33:15
    #1
    Üyeliği durduruldu
    merhabalar

    bir veritabanı var ve içerisinde siparişte gelen ürünlerin verileri bulunmakta.

    örnek:

    id - siparis_id - urun_adi - adet

    değerler:

    1 - 1 - ütü - 1
    2 - 1 - salata - 2
    3 - 1 - klavye - 4
    4 - 2 - süt - 6
    5 - 3 - top - 3
    6 - 3 - kale - 1


    bu veritabanını;

    1.sipariş;
    1 adet ütü, 2 adet salata, 4 adet klavye

    2.sipariş;
    6 adet süt

    3.sipariş;
    3 adet top, 1 adet kale

    şeklinde nasıl yazdırabilirim?
    yani siparis_id aynı olanları bir arada tutmak amaç.

    bayadır uğraşıyorum ve bilgisayarın başında uzun süre olduğum için çözmekte zorlandım.
    yardımlarınız için teşekkürler şimdiden
  • 03-12-2013, 18:43:16
    #2
    3 adet tabloya ihtiyacınız var,

    siparisler
    siparisurunler
    urunhizmetler

    sipariş tutarı ve durumu gibi alanları siparişler tablosunda tutacaksınız
    siprişte geçilen ürünleri, adetlerini , sipariş urunler tablosunda tutacaksınız
    urunler tablosunda ürünlerin birim fiyatlarını , özelliklerini vs tutacaksınız

    daha sonrasında ortak id aldırarak siparişler ve siparişürünler tablosunda kayıt yaptıracaksınız.

    Aradığınız mantık olduğu için sadece yazı ile tablo yapılarını yazmadan geçtim sanırım yardımcı olacaktır.
  • 03-12-2013, 18:50:41
    #3
    Üyeliği durduruldu
    Big_Turk adlı üyeden alıntı: mesajı görüntüle
    3 adet tabloya ihtiyacınız var,

    siparisler
    siparisurunler
    urunhizmetler

    sipariş tutarı ve durumu gibi alanları siparişler tablosunda tutacaksınız
    siprişte geçilen ürünleri, adetlerini , sipariş urunler tablosunda tutacaksınız
    urunler tablosunda ürünlerin birim fiyatlarını , özelliklerini vs tutacaksınız

    daha sonrasında ortak id aldırarak siparişler ve siparişürünler tablosunda kayıt yaptıracaksınız.

    Aradığınız mantık olduğu için sadece yazı ile tablo yapılarını yazmadan geçtim sanırım yardımcı olacaktır.
    ben de öyle yapıyorum üstad, ama sıkıntımız şu;

    aynı ıd ları bir arada yazdırma, ben yazdırırken hepsi tek seferde olmuş gibi oluyor
  • 03-12-2013, 19:00:37
    #4
    Siparişler


    Sipariş Ürünler


    Ürünhizmetler


    tabloların bu şekilde olsun aşağıdaki gibi bir sorgu ile ürünleri ayrı ayrı listeleyebilirsin. tüm ürünleri listeleyip order by komutu ile siparişid sine göre gruplandırırsan istediğini alacağını tahmin ediyorum.


    $sorgu = mysql_query("SELECT * FROM siparisler,siparislerurun,urunhizmetler where siparisler.siparisid = siparislerurun.ssiparisid and urunhizmetler.urunid = siparislerurun.shangiurun and siparisler.siparisdurumu = '1' and urunhizmetmi='0' and siparismusteriid = '$musteriid'  order BY siparisid");
  • 03-12-2013, 20:07:55
    #5
    Üyeliği durduruldu
    Big_Turk adlı üyeden alıntı: mesajı görüntüle
    Siparişler


    Sipariş Ürünler


    Ürünhizmetler


    tabloların bu şekilde olsun aşağıdaki gibi bir sorgu ile ürünleri ayrı ayrı listeleyebilirsin. tüm ürünleri listeleyip order by komutu ile siparişid sine göre gruplandırırsan istediğini alacağını tahmin ediyorum.


    $sorgu = mysql_query("SELECT * FROM siparisler,siparislerurun,urunhizmetler where siparisler.siparisid = siparislerurun.ssiparisid and urunhizmetler.urunid = siparislerurun.shangiurun and siparisler.siparisdurumu = '1' and urunhizmetmi='0' and siparismusteriid = '$musteriid'  order BY siparisid");
    benimki de dediğiniz şekilde hocam, sıkıntı şu; sepete atılan ürünlerin sipariş numaraları aynı toplu gösterebilmek için, bunları da toplu göstermem gerek..

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 20:07:55 -->-> Daha önceki mesaj 19:13:40 --

    aktif arkadaşlar
  • 03-12-2013, 23:39:59
    #6
    dev adlı üyeden alıntı: mesajı görüntüle
    benimki de dediğiniz şekilde hocam, sıkıntı şu; sepete atılan ürünlerin sipariş numaraları aynı toplu gösterebilmek için, bunları da toplu göstermem gerek..

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 20:07:55 -->-> Daha önceki mesaj 19:13:40 --

    aktif arkadaşlar

    ben sorunu tablo yapısında aradığım için sürekli ona vurgu yapmıştım ama senin istediğin şu sanırım,

    	$sorgu = mysql_query("SELECT siparisid FROM siparisler order BY siparisid  asc limit 0,10");
    	while($yaz = mysql_fetch_assoc($sorgu)) {
    		
    		$siparisid 				= $yaz['siparisid'];
    		echo $siparisid.' Numaralı Sipariş<br>';
    		
    		$icsorgu = mysql_query("SELECT siparisadi FROM siparisurun where sipid='$siparisid' order BY urunid  DESC limit 0,10");
    		while($tahtaya = mysql_fetch_assoc($icsorgu)) {
    			$urunadi 				= $tahtaya['siparisadi'];
    			echo $urunadi;
    		}
    		echo '<br>';
    	}
    Çıktısı

    1 Numaralı Sipariş
    kokoreç , domates , ütü

    2 Numaralı Sipariş
    bal kabağı

    3 Numaralı Sipariş
    mavs , bilgisayar