Mam problem z dodawaniem kilku rekordów do tablicy na raz.
Działanie jest takie:
Formularz gdzie pole odp, które jest traktowane jako element tablicy (name=odp[]), ponieważ może być ich różna ilość - są dynamicznie dodawane.
Próbuję zczytać wszystko i dodać kilka rekordów na raz, niestety dodaje mi tylko jeden rekord z ostatnim elementem.
Kod odpowiedzialny za dodawanie nowego inputa:
function DodajElement()
{
var element = document.createElement('input');
element.setAttribute('type', 'text');
var num = 0;
element.setAttribute('name', 'odp[]');
element.style.display = "block";
element.style.margin= "2px";
element.style.width="50%";
var kolejny = document.getElementById('add');
document.forms['formularz'].insertBefore(element,kolejny);
}
Kod odpowiedzialny za dodawanie do bazy:
if (!empty($_POST['odp']))
$tab=$_POST['odp'];
foreach(array_keys($tab) as $n){
$id_odp=$id_ankiety+rand(100000,999999);
$sql2="INSERT INTO odp_zwykla (id,id_zwyklej,odp)
VALUES
('$id_odp','$id_ankiety','$tab[$n]')";
}
Szczerze powiedziawszy jestem nowicjuszką w tym względzie.
Zastanawiam się czy do przesłania nie są potrzebne cookies.