• 07-09-2020, 02:01:04
    #1
    Merhaba dostlar
    yardıma ihtiyacım var 16. satıurda data kısmını 0 1 2 3 diye genişletmek istiyorum veritabanımdaki siparislerim tablosunda urunadi,yfiyat,urunid var urunler tablosunda ise parasutid urunlerden urunid cekilerek siparisler tablosunda urun adi ve fiyat cekilecek ve 2 tane eri varsa 2 taneyi array yapısıyla oraya yazdırmak ... yardım edebilecek arkadaşlar olursa minnettar kalırım


     ## Fatura
    $invoice = array (
    'data' => array (
    'type' => 'sales_invoices', // gerekli
    'attributes' => array (
    'item_type' => 'invoice', // gerekli
    'description' => 'Description',
    'issue_date' => '2019-03-19', // fatura tarih
    'due_date' => '2019-03-19',
    'invoice_series' => 'test',
    'invoice_id' => 1,
    'currency' => 'TRL'
    ),
    'relationships' => array (
    'details' => array (
    'data' =>array (
    0 => array (
    'type' => 'sales_invoice_details',
    'attributes' => array (
    'quantity' => 1,
    'unit_price' => $urunCek['yfiyat'],
    'vat_rate' => 18,
    'description' => $urunCek['urunadi']
    ),
    "relationships" => array (
    "product" => array (
    "data" => array (
    "id" => $parasuturunid,
    "type" => "products"
    )
    )
    )
    )
    ),
    ),
    'contact' => array (
    'data' => array (
    'id' => $uyeid,
    'type' => 'contacts'
    )
    )
    ),
    )
    );
    
    ## Fatura Oluştur
    $fatura = $client->call( parasut\Invoice::class ) ->create($invoice); // fatura oluştur
    $faturaid = $fatura['data']['id']; // parasutun verdiği fatura id
  • 07-09-2020, 02:06:34
    #2
    snaja48 adlı üyeden alıntı: mesajı görüntüle
    Merhaba dostlar
    yardıma ihtiyacım var 16. satıurda data kısmını 0 1 2 3 diye genişletmek istiyorum veritabanımdaki siparislerim tablosunda urunadi,yfiyat,urunid var urunler tablosunda ise parasutid urunlerden urunid cekilerek siparisler tablosunda urun adi ve fiyat cekilecek ve 2 tane eri varsa 2 taneyi array yapısıyla oraya yazdırmak ... yardım edebilecek arkadaşlar olursa minnettar kalırım


     ## Fatura
    $invoice = array (
    'data' => array (
    'type' => 'sales_invoices', // gerekli
    'attributes' => array (
    'item_type' => 'invoice', // gerekli
    'description' => 'Description',
    'issue_date' => '2019-03-19', // fatura tarih
    'due_date' => '2019-03-19',
    'invoice_series' => 'test',
    'invoice_id' => 1,
    'currency' => 'TRL'
    ),
    'relationships' => array (
    'details' => array (
    'data' =>array (
    0 => array (
    'type' => 'sales_invoice_details',
    'attributes' => array (
    'quantity' => 1,
    'unit_price' => $urunCek['yfiyat'],
    'vat_rate' => 18,
    'description' => $urunCek['urunadi']
    ),
    "relationships" => array (
    "product" => array (
    "data" => array (
    "id" => $parasuturunid,
    "type" => "products"
    )
    )
    )
    )
    ),
    ),
    'contact' => array (
    'data' => array (
    'id' => $uyeid,
    'type' => 'contacts'
    )
    )
    ),
    )
    );
    
    ## Fatura Oluştur
    $fatura = $client->call( parasut\Invoice::class ) ->create($invoice); // fatura oluştur
    $faturaid = $fatura['data']['id']; // parasutun verdiği fatura id

    Hocam veritabanından çektiğiniz bilgileri array'a alıp ilgili yere değişkeni ekleyin birden fazlada ekleyebilirsiniz sorunsuz olur.
  • 07-09-2020, 02:08:20
    #3
    öncelikle cevabınız için teşekkür ederim

    while döngüsü ile yapamıyorum yapıyı bozduğu için hata alıyorum
    array_push denedim ama sanırım bir yerlerde hata yapıyorum yardım almak istedim
  • 07-09-2020, 02:17:01
    #4
    While döngüsünü nerede yapıyorsunuz?
    Yukarıda veritabanından gelen verilerin array işlemini yapmalısın.
    Daha sonra altta data içine değişkenini eklemelisin
  • 07-09-2020, 02:48:58
    #5
    anlıyorum array içinde hiç döngü kullanmadan yapıyı yukarıda hallederek aşağıya sadece bir değişken belirteceğim deniyorum
  • 07-09-2020, 02:49:23
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $array[0] = array( "1", "2" );
    $array[1] = array( "3", "4" );
    $say=count($array);
    for ($i=0; $i <$say ; $i++) {
    
    array_push($invoice["data"]["relationships"]["details"]['data'],$array[$i] );
    }
    
    print_r($invoice["data"]);
    bunu mu demek istiyorsunuz, eğer öyleyse ilk olarak veritabanından gelen değerleri döngüyle bir diziye aktarın sonrasında array push ile for döngüsünde ekleme yapın
  • 07-09-2020, 02:53:37
    #7
    aslında istediğim olay şu şekilde siparislerim tablosundaki verileri yazdırarak data kısmını genişletmek (bu yapıyı çekerken ve yazdırırken bir yerde hata yaptığım için alamıyorum istediğimi şu an tek şekilde çalışıyor istediğim çoklu bir şekilde döngüye sokarak çalıştırmak)

    0 => array (
    'type' => 'sales_invoice_details',
    'attributes' => array (
    'quantity' => 2, // adet
    'unit_price' => '55', // urun fiyatı
    'vat_rate' => 8, // kdv
    'description' => '2020-09-07 Perakende Satışı ID - 1002' // urun adı
    ),
    "relationships" => array (
    "product" => array (
    "data" => array (
    "id" => 1336582, // urunler tablosundaki id
    "type" => "products"
    )
    )
    )
    ),
    
    
    1 => array (
    'type' => 'sales_invoice_details',
    'attributes' => array (
    'quantity' => 1, // adet
    'unit_price' => '33', // urun fiyatı
    'vat_rate' => '18', // kdv
    'description' => '2020-09-07 Perakende Satışı ID - 1003' // urun adı
    ),
    "relationships" => array (
    "product" => array (
    "data" => array (
    "id" => 5546584, // urunler tablosundaki id
    "type" => "products"
    )
    )
    )
                               )
  • 07-09-2020, 03:06:57
    #8
    babfo adlı üyeden alıntı: mesajı görüntüle
    $array[0] = array( "1", "2" );
    $array[1] = array( "3", "4" );
    $say=count($array);
    for ($i=0; $i <$say ; $i++) {
    
    array_push($invoice["data"]["relationships"]["details"]['data'],$array[$i] );
    }
    
    print_r($invoice["data"]);
    bunu mu demek istiyorsunuz, eğer öyleyse ilk olarak veritabanından gelen değerleri döngüyle bir diziye aktarın sonrasında array push ile for döngüsünde ekleme yapın
    cevabınız için teşekkür ederim bu kod varolan yapıya ekleme yapıyor array_push sayesinde kendi projemde kodu dögü üstünde kullandığım için çalışmamış yinede yardımı geçenlere teşekkür ederim