Çoklu input insert etme
$icerik="";
for ($i=1; $i < 20; $i++) {
$y=$db->filter("adi".$i);
if (!empty($y)) {
$adi[$i]= $db->filter("adi".$i);
$soyadi[$i]= $db->filter("soyadi".$i);
$isim[$i]= $adi[$i]." ".$soyadi[$i];
$yazar_sira[$i]= $db->filter("yazar_sira".$i);
}else{
break;
}
}
$m_yazar_ekle="";
for ($i=1; $i < 20; $i++) {
if (!empty($adi[$i])) {
$m_yazar_ekle = $db->SorguCalistir(
"INSERT INTO yazarlar",
"SET yazar=?,adi=?,soyadi=?,yazar_sira=?",
array($isim[$i],$adi[$i],$soyadi[$i],$yazar_sira[$i])
);
}else{
break;
}
}
HTML Yapımda şu şekilde
...
<input type="text" class="form-control" placeholder="Yazarın adı…" name="adi1">
<input type="text" class="form-control" placeholder="Yazarın soyadı…" name="soyadi1">
...
<button type="button" class="btn btn-info btn-circle" style="float:right;" onclick="yeniekle()">
<i class="fa fa-plus"></i>
</button>
inputları ekleyeceğim yazar sayısına göre javascript ile çoğaltıyorum.
function yeniekle() {
let writersLength = $(".writers").length;
let icerik = `
<input type="text" class="form-control " placeholder=" Yazarın adı…" name="adi${writersLength + 1}">
...
Sonuç hata ile sonuçlanıyor, insert etmiyor.
Hatam nerede çözemedim?
Yine de aynı niteliğe sahip inputları çoğaltırken php tarafına dizi olarak gidecek şekilde çoğaltın. Ön yüzde 1. 2. diye kullanıcıya gösterin ama kod yapısında bu 1. 2. mantığını array elementlerinin sırası şeklinde yakalayın. Ajax kullanmanıza gerek yok. Yapmaya çalıştığınız pek makul gelmedi bana açıkçası.