• 14-02-2016, 18:04:10
    #1
    Merhaba arkadaslar ben aşağıdaki adresde bulunan kod ile sayfa yenilemeden satırlar ekleyebiliyorum fakat bunları database nasıl kayıt edeceğim

    bazen 5 tane bazen 10 tane satır eklemem gerekiyor sayı belli değil 7 de olabilir satırlardaki textbox lara isim veremiyorum bilgisi olan nasıl yapacağımı anlatabilirmi


    örnek : http://jsfiddle.net/aaki/hMJEy/1/
  • 14-02-2016, 21:09:59
    #2
    textbox adini metin[] seklinde verip php betiginde for ile dondurerek degisken degerlerini alabilirsin.

    <textarea name="metin[]"></textarea>

    bu sekilde istedigin kadar text alani ekleyebilirsin sayfaya puf noktasi [].

    php betigindede

    for ($i = 1; $i <= count($_POST[metin]); $i++) {
    echo $metin[$i];
    }

    bu kodla degerleri alabilirsin. cepten yazdigim icin bu kadar yazabiliyorum. Mantik bu.
  • 14-02-2016, 21:17:27
    #3
    Kain adlı üyeden alıntı: mesajı görüntüle
    textbox adini metin[] seklinde verip php betiginde for ile dondurerek degisken degerlerini alabilirsin.

    <textarea name="metin[]"></textarea>

    bu sekilde istedigin kadar text alani ekleyebilirsin sayfaya puf noktasi [].

    php betigindede

    for ($i = 1; $i <= count($_POST[metin]); $i++) {
    echo $metin[$i];
    }

    bu kodla degerleri alabilirsin. cepten yazdigim icin bu kadar yazabiliyorum. Mantik bu.

    yani database kayıt yapacağım zaman aşağıdaki şekildemi olacak bu yazdıklarım tek satır içindi 2. satır içinde aynısımı devam edecek ?

    $urun = $_POST['metin[]'];
    $serino = $_POST['metin[]'];
    $kodu = $_POST['metin[]'];
    $adet = $_POST['metin[]'];
  • 15-02-2016, 10:41:49
    #4
    urun serino kodu adet

    her input için urun[] serino[] kodu[] adet[] şeklinde yapman lazım.

    yukarıdaki for ile de birini referans alıp veritabanına kaydedebilirsin.

    for ($i = 1; $i <= count($_POST[urun]); $i++) {
    echo $_POST[urun][$i];
    echo $_POST[serino][$i];
    echo $_POST[kodu][$i];
    echo $_POST[adet][$i];
    }
  • 15-02-2016, 23:27:34
    #5
    Kain adlı üyeden alıntı: mesajı görüntüle
    urun serino kodu adet

    her input için urun[] serino[] kodu[] adet[] şeklinde yapman lazım.

    yukarıdaki for ile de birini referans alıp veritabanına kaydedebilirsin.

    for ($i = 1; $i <= count($_POST[urun]); $i++) {
    echo $_POST[urun][$i];
    echo $_POST[serino][$i];
    echo $_POST[kodu][$i];
    echo $_POST[adet][$i];
    }
    bellirli bir kısmı farklı bir şekilde yaptım şimdi farklı bir sorun ile karşı karşıyayım aslında hemen hemen aynı sorun gibi duruyor

    satır ekleme olayını sorunuz şekilde yaptım ve satır eklediğimde şöyle gözüküyor


    <body>
      <script type="text/template" id="anasablon">
    <div class="form">
                        <input id="kutu{{ID}}" name="kutu{{ID}}" type="text"> <input id="test{{ID}}" name="test{{ID}}" type="text"><button type="button" class="sil">Sil</button>
                    </div>
    
    </script>
    <div id="araclar">
    <div class="form">
                        <input id="kutu1" name="kutu1" type="text"> <input id="test1" name="test1" type="text"><button type="button" class="sil">Sil</button>
                    </div>
    
    
    <div class="form">
                        <input id="kutu2" name="kutu2" type="text"> <input id="test2" name="test2" type="text"><button type="button" class="sil">Sil</button>
                    </div>
    
    
    <div class="form">
                        <input id="kutu3" name="kutu3" type="text"> <input id="test3" name="test3" type="text"><button type="button" class="sil">Sil</button>
                    </div>
    
    
    <div class="form">
                        <input id="kutu4" name="kutu4" type="text"> <input id="test4" name="test4" type="text"><button type="button" class="sil">Sil</button>
                    </div>
    
    </div>
        <div class="form-group">
            <button type="button" name="olustur" class="cogalt">+ Yeni oluştur</button>
        </div>
    
    </body>
    kutu1 ve test1 diye iki adet textbox mevcut her butona basdığımda kutu ve testlerin sayıları artmakta kutu2 test2 vs..

    şimdi bunları database nasıl kayıt ederim buraya gerektiği kadar bilgiyi ekledikten sonra database farklı id ye sahip inputları nasıl yollarım

    sonuçta database kayıt yapar iken input ismini değişken olarak atıyorum ama burada bir sürü input ismi olacak çıkamadım açıkcası

    yardımcı olursanız sevinirim bu arada örnek inputlar burada

    https://jsfiddle.net/L7qkvgbk/
  • 16-02-2016, 21:25:16
    #6
    yokmu yardım edebilecek
  • 18-02-2016, 03:04:32
    #7
    <?php
    if(isset($_POST)) {
    	for($i=0;$i<=count($_POST["kutu"])-1;$i++){
    		mysql_query("insert into veriler (kutu,test) values('{$_POST["kutu"][$i]}','{$_POST["test"][$i]}')");
    	}
    }
    $sayi = mysql_num_rows(mysql_query("select * from veriler"));
    ?>
    <script type="text/javascript" src="//code.jquery.com/jquery-1.11.0.js"></script>* 
    <script type='text/javascript'>
    $(window).load(function(){
    var cogaltsayi = <?php echo $sayi; ?>;
    function cogalt_fonk() {
    ****var sablon = $('#anasablon').text();
    ****return function(){
    ********return sablon.replace(/{{ID}}/g, ++cogaltsayi); 
    ****}
    }
    var araclar = $('#araclar');
    $(document).on("click", 'button.cogalt', function(){* 
    **araclar.append(cogalt_fonk());** 
    });* 
    $(document).on('click', 'button.sil', function() {* 
    ****$(this).parent().remove();* 
    ****return false;* 
    });* 
    araclar.append(cogalt_fonk());* 
    }); 
    </script>* 
    *
    <script type="text/template" id="anasablon">* 
    <div class="form">
    	<input id="kutu{{ID}}" name="kutu[]" type="text">
    	<input id="test{{ID}}" name="test[]" type="text">
    	<button type="button" class="sil">Sil</button>
    </div>
    </script>
    <form action="" method="post" enctype="multipart/form-data">*
    	<div id='araclar'></div>* 
    ****<div class="form-group">* 
    ********<button type="button" name="olustur" class="cogalt">+ Yeni oluştur</button>* 
    ****</div>* 
    ****<input type="submit" value="gonder"/>* 
    </form>
    Bu şekilde sorunun çözülecektir. Ücretli konundan aldım kodlarını, bu şekilde revize edersen düzgün çalışacaktır.
    Not: otomatik olarak yıldızlar eklendi, onlar kodu bozabilir.
  • 18-02-2016, 21:15:13
    #8
    teşekkür ederim sorunu çözdüm buna benzer bir kod ile