• 10-01-2021, 21:52:46
    #1
    Merhaba,

    Günlük kiralık evler için eşyaların sağlamlığını kontrol ettirdiğim bir php scriptim var. Kafamda bir türlü mantık kuramadım.

    Bütün envanteri daha önceden girip 30-40 sütunlu bir db yaparsam sorun değil gibi ama yeni bir ürün eklediğimde sıkıntı olacak..

    bende önceden eklediğim eşyaların hasar durumu için bir form yaptım databse yapım şu şekilde.


    bu dbden bazı verileri input hidden ile alıp..


    bu şekilde bir html form ile yeni bir dbye eklemek istiyorum ama kafam şurada karışıyor.


    <div class="form-group row">
                                <label class="col-lg-3 control-label text-lg-right pt-2" >Envanter Adet</label>
                                <div class="col-lg-6">
                                    <input type="text" class="form-control" name="envanter_adet" value="<?php echo $envantercek['envanter_adet'] ?> " >
                                </div>
                            </div>
    burada her bir ürünün envanter_adet adlı tabloya kaydetmek istiyor. başta hepsini post ile gönderip tekrar aynı sayfaya durumunu 1 yapıp diğerleri sıfır kalınca tek tek göndersin diye düşündüm ama çok mantıksız.

    uzun lafın kısası

    1 form ile birden fazla veriyi 1 kerede nasıl db'ye kaydederiz ? aklıma array olarak islem.php'ye atıp bu array'i orada while ile db'ye atmak var ama işin mantığını öğrenmek istediğim için sizce bu yönterm doğru mu yoksa bu tür durumlar için daha doğru bir yöntem var mı ? örnek ile açıklarsanız sevinirim.
  • 10-01-2021, 21:54:25
    #2
    <div class="col-sm-10"><?php echo $envantercek['envanter_adet']; ?></td>  <td> <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet"></div>
  • 10-01-2021, 21:54:34
    #3
    O kadar karışık sormuşsun ki son cümlen olmasa yanıt veremeyecektim, tek form üzerinden birden fala aynı veriyi yollamanın zaten tek doğru yolu onu array olarak yollayıp foreach ile işlemektir.
  • 10-01-2021, 21:56:55
    #4
    yazilimdestegi adlı üyeden alıntı: mesajı görüntüle
    O kadar karışık sormuşsun ki son cümlen olmasa yanıt veremeyecektim, tek form üzerinden birden fala aynı veriyi yollamanın zaten tek doğru yolu onu array olarak yollayıp foreach ile işlemektir.
    hocam bahsettiğim üzere çok fazla deneme yaptım kafam da ultra karışık. peki alt alta olan html sorguları nasıl karşı tarafa bir array olarak gidecek ?
  • 10-01-2021, 21:59:55
    #5
    bence veritabanında bu kadar sütun açacağına 1 tane aç ve parçalayarak ekleme yap explode fonksiyonu ile bir form oluşturup istediğin kadar envater alanı ekle ve chechboxlar yada select itpleriyle onları tek sütuna ekle.
  • 10-01-2021, 22:00:03
    #6
    anladıgım kadarıyla aynı formda birden fazla ev ekleniyor ve içerisinde birden fazla ürün var doğru mu?
  • 10-01-2021, 22:00:28
    #7
    <form action="islem.php" method="POST" enctype="multipart/form-data" id="demo-form2" data-parsley-validate class="form-horizontal form-label-left">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <button type="submit" name="envanterduzenle" class="btn btn-success">Kaydet</button>
    </form>
    mesela burada 1 den fazla envanter_kadet post ettim karşı taraf bunu nasıl array olarak alacak ?
  • 10-01-2021, 22:02:35
    #8
    eruseldarine adlı üyeden alıntı: mesajı görüntüle
    <form action="islem.php" method="POST" enctype="multipart/form-data" id="demo-form2" data-parsley-validate class="form-horizontal form-label-left">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <input type="text"  class="form-control" name="envanter_kadet" placeholder="adet">
    <button type="submit" name="envanterduzenle" class="btn btn-success">Kaydet</button>
    </form>
    mesela burada 1 den fazla envanter_kadet post ettim karşı taraf bunu nasıl array olarak alacak ?
    $_POST['envanter_kadet '][0]
    $_POST['envanter_kadet '][1]

    Bu şekilde alabilirsin
  • 10-01-2021, 22:02:52
    #9
    profweb adlı üyeden alıntı: mesajı görüntüle
    anladıgım kadarıyla aynı formda birden fazla ev ekleniyor ve içerisinde birden fazla ürün var doğru mu?

    aynen birden fazla ev var birden fazla eşya var o tarafları ayarladım ama yeni bir eşya eklediğimde bozulmasını istemiyorum bende post ettiğim tarihleri sonradan ayrı bir db ye alıcam ama form ile kontrolu array olarak gonderip karşı tarafta nasıl yakalarım belki 1 gün ara versem bulurm çözümü ama inada bindi