PHP: aynı tabloya kaydetme birden tuples

3 Cevap php

Ben aynı $ _POST dizi aynı tabloya birkaç kez verileri kaydetmek çalışıyorum. Sen benim kayıt formuna bir aile adları, cinsiyet ve onlar birlikte getirmek isteyen tüm üyelerin yaşını belirtmek için izin verilir, bkz.

Bu veri aditional_member adında bir veritabanı tablosunda saklanır ediliyor. Aile büyüklüğü dayanarak, ben dinamik her satır gerekli giriş alanları sayıda html tablo satırları oluşturma.

<tr id="additionalmember_3">
    <td><input type="text" name="first_name1" maxlength="50" value="" /></td>
    <td><input type="text" name="last_name1" maxlength="50" value="" /></td>
    td><select name="gender1" value="" ><option value='Male'>Male</option><option value='Female'>Female</option></select></td>
    <td><select name="age_group"value="" ><option value='18 to 30'>18 to 30</option><option value='31 to 60'>31 to 60</option></select></td>      
</tr>

Ben POST zaman, bize (3 tablo satır yukarıdaki gibi), böylece üst üste gelen bir veri, daha sonra iki satır addional_member tabloya eklemek için basit bir yolu var mı, ve ben giriş üç set var diyelim. Ben başarısız ekleme deyimi, döngü çalıştı. Önerilere temelde açık, ben bir tablo kullanmak gerekmez.

Any ideas, Thank you.

3 Cevap

Ben ne istediğinizi doğru anlaşıldığı takdirde biliyorum, ama bu kalkmayın

    <?php
    //having 3 rows to insert 
    for($i=1;$i<4;$i++){

        mysql_query("INSERT INTO Table (field1, field2, field3) values (
          '".$_POST['first_name'.$i]."',
          '".$_POST['last_name'.$i]."',
          '".$_POST['gender'.$i]."')");
    }
?>

name girişlerin sonunda [] olması için değiştirme PHP bir dizi olarak $_POST unsurları tedavi neden olur. Sadece indeksleri üzerinden yineleme ve birlikte her dizi çekin.

Yazınızı belgelerin bir dizi geçmek için PHP "[]" özelliğini kullanın, böylece satırlar bu gibi görünecektir:

<tr>
    <td><input type="text" name="first_name[]" maxlength="50" value="" /></td>
    <td><input type="text" name="last_name[]" maxlength="50" value="" /></td>
    <td><select name="gender[]" value="" >
           <option value='Male'>Male</option>
           <option value='Female'>Female</option>
        </select>
    </td>
    <td><select name="age_group[]" value="" >
           <option value='18 to 30'>18 to 30</option>
           <option value='31 to 60'>31 to 60</option>
        </select>
    </td>      
</tr>

Eğer gönderilen verileri almak zaman, sadece print_r() ekrana dökümü ve bu sizin için organize nasıl görürsünüz kullanın.