• 27-12-2021, 14:30:29
    #1
    Merhaba, mantığı anlatabilecek var mı? Benim bir sipariş oluşturma sayfam var, burada bir müşteriye birden fazla ürünü sipariş formunda ekletiyorum. Sonradan bu 1 müşteri için olan verileri başka bir sayfada tabloya aktarmam lazım.

    Şimdi ben bu sipariş formundaki satır satır eklediğim ürünleri SQL'de nasıl saklayabilirim? Yani Adı şeklinde inputum var adi[] bundan 10 tane var bunları tek satırda SQL'de saklayıp sonra tabloya nasıl aktarırım?
  • 27-12-2021, 14:34:42
    #2
    adı yerine id olarak tutabilirsiniz array olarak gelen verileri json_encode yapar json formatında idleri veritabanına kaydedersiniz sonra işlem yaparkende id den ürün bilgisi çekip işlem yaparsınız daha temiz bir veritabanı yapısı olacaktır bu sayede
  • 27-12-2021, 14:37:20
    #3
    yusuf68700 adlı üyeden alıntı: mesajı görüntüle
    adı yerine id olarak tutabilirsiniz array olarak gelen verileri json_encode yapar json formatında idleri veritabanına kaydedersiniz sonra işlem yaparkende id den ürün bilgisi çekip işlem yaparsınız daha temiz bir veritabanı yapısı olacaktır bu sayede
    Öncelikle teşekkürler hocam. Birden fazla inputu nasıl tek id altına alıp veritabanına kaydedebilirim o kısmı bilmiyorum.


  • 27-12-2021, 14:43:31
    #4
    Ieader adlı üyeden alıntı: mesajı görüntüle
    Öncelikle teşekkürler hocam. Birden fazla inputu nasıl tek id altına alıp veritabanına kaydedebilirim o kısmı bilmiyorum. Bunlar 1 müşteri için ürünleri seçme alanı:

    Hocam sizin formunuzun tam olarak yapısını bilmediğim için birşey diyemiyorum fakat Demoyu inceleyebilirsiniz

    <?php
    print_r($_POST);
    
    ?>
    <form action="" method="post">
    
    <input name="urun[]" placeholder="urun1">
    
    <br>
    <input name="urun[]" placeholder="urun2">
    <button>gönder</button>
    
    </form>
  • 27-12-2021, 14:44:18
    #5
    yusuf68700 adlı üyeden alıntı: mesajı görüntüle
    Hocam sizin formunuzun tam olarak yapsıın bilmediğim için birşey diyemiyorum fakat Demoyu inceleyebilirsiniz

    <?php
    print_r($_POST);
    
    ?>
    <form action="" method="post">
    
    <input name="urun[]" placeholder="urun1">
    
    <br>
    <input name="urun[]" placeholder="urun2">
    <button>gönder</button>
    
    </form>
    İnceliyorum hocam teşekkürler.
  • 27-12-2021, 14:48:10
    #6
    @yusuf68700; Bu şekilde veritabanına kaydetsem hocam, sonradan bunları tabloya nasıl aktarırım? Örneğin 1 elma 1 armut aldı bunları ekledim. Sonra sipariş özeti: 1 elma 1 armut almışsın diye tabloya aktarabilir miyim?
  • 27-12-2021, 14:52:47
    #7
    Ieader adlı üyeden alıntı: mesajı görüntüle
    @yusuf68700; Bu şekilde veritabanına kaydetsem hocam, sonradan bunları tabloya nasıl aktarırım? Örneğin 1 elma 1 armut aldı bunları ekledim. Sonra sipariş özeti: 1 elma 1 armut almışsın diye tabloya aktarabilir miyim?
    For döngüsü içine json decode yapıp yazdırın tablo şeklinde
  • 27-12-2021, 15:00:23
    #8
    KeremWho adlı üyeden alıntı: mesajı görüntüle
    For döngüsü içine json decode yapıp yazdırın tablo şeklinde
    Teşekkürler hocam, yapmaya çalışıcam bakalım.
  • 28-12-2021, 11:03:08
    #9
    @KeremWho; @yusuf68700;

    Hocalarım bir demo yaptım bakabilir misiniz? Ben denemeler yaptım fakat tabloya bir türlü alt alta yazamadım kafam çok karıştı sonuca ulaşamadım bir türlü.
    Değerleri tabloya yazdırıyorum fakat hep aynıları dönüyor.

    <form id="contactForm1" action="http://localhost/array.php" method="post">
        <input type="text" name="Kod[]" value="01"> <br>
        <input type="text" name="Cinsi[]" value="Köşelik"> <br>
        <input type="text" name="Fiyat[]" value="1.5"> <br>
        <hr>
        <input type="text" name="Kod[]" value="02"> <br>
        <input type="text" name="Cinsi[]" value="Perde"> <br>
        <input type="text" name="Fiyat[]" value="1.2"> <br>
        <hr>
        <input type="text" name="Kod[]" value="03"> <br>
        <input type="text" name="Cinsi[]" value="Tabure"> <br>
        <input type="text" name="Fiyat[]" value="1.1"> <br>
        <button type="submit" style="margin-top: 15px;">Yolla</button>
    </form>
    
    <script type="text/javascript">
        var frm = $('#contactForm1');
    
        frm.submit(function(e) {
    
            e.preventDefault();
    
            $.ajax({
                type: frm.attr('method'),
                url: frm.attr('action'),
                data: frm.serialize(),
                success: function(data) {
                    console.log('Basarili');
                    console.log(data);
                },
                error: function(data) {
                    console.log('Hata');
                    console.log(data);
                },
            });
        });
    </script>
    
    <?php print_r($_POST); ?>
    
    <style>
        table,
        td,
        th {
            border: 1px solid black;
        }
    
        table {
            width: 100%;
            border-collapse: collapse;
        }
    </style>
    <table>
        <tr>
            <th>Kod</th>
            <th>Cinsi</th>
            <th>Fiyat</th>
        </tr>
        <?php foreach ($_POST as $key => $value) { ?>
            <tr>
                <td><?= $value[2]; ?></td>
                <td><?= $value[2]; ?></td>
                <td><?= $value[2]; ?></td>
            </tr>
        <?php } ?>
    </table>