v2.5.2
Giriş yap

Aynı name ile post ettiğim diziyi ayrıştıramıyorum

spleidanger
335 defa görüntülendi

Merhaba herkese iyi çalışmalar jquery ile form'dan topluca inputlar yolluyorum
şu şekilde:

    <input type="hidden" name="content_id" value="<?php echo $contentrow['content_id'] ?>">
    <input type="text" class="form-control" name="content_detail" value="<?php echo $contentrow['content_detail'] ?>">
HTML
    var data=$('#form').serializeArray();
JavaScript

Bunları array halinde gönderiyor hiç bir problem yok buraya kadar herşey normal
fakat gelen diziyi php ile veritabanına eklemek istediğimde dizide birden fazla content_detail gibi olduğu için hangisini neyle nasıl eşleyeceğim bilemedim pek dizilerle aram yok biraz eksiğim bu konuda

php tarafında şu şekil yazdırıyorum

    $data=$_POST['data'];
	print_r($data);
PHP

yani uzun lafın kısası istediğim bu gönderdiğim çok boyutlu dizide
content_detail bilgisi geliyor content_id geliyor bunları birbiriyle eşliyip veritabanında güncelleme ekleme işlemleri yapmak istiyorum
Herkese iyi çalışmalar

Cevap yaz
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Cevaplar (1)
ebykdrms
931 gün önce
<div>
    <input type="hidden" name="content_id" value="123">
    <input type="text" name="content_detail" class="form-control" value="abc1">    
</div>
<div>
    <input type="hidden" name="content_id" value="132">
    <input type="text" name="content_detail" class="form-control" value="abc2">
</div>
<div>
    <input type="hidden" name="content_id" value="213">
    <input type="text" name="content_detail" class="form-control" value="abc3">
</div>
<div>
    <input type="hidden" name="content_id" value="231">
    <input type="text" name="content_detail" class="form-control" value="abc4">
</div>

HTML

Bu şekilde input'lar var ve data key'iyle post ediliyorlar.
content_id ve content_detail dizi olarak PHP'ye iletiliyor ve bu dizilerin eleman sayıları aynı.
HTML'de de doğru sıralamayla dizilmişlerse yukarıdaki html koduna benzer yapıdan giden POST isteğinin PHP'de şu şekilde bir karşılığı oluşuyor olmalı:

$_POST["data"]["content_id"] = ["123", "132", "213", "231"];
$_POST["data"]["content_detail"] = ["abc1", "abc2", "abc3", "abc4"];
PHP

Bunları tek bir çatı altında birleştirmek istiyorsanız:

$content = [];
$contentCount = count($_POST["data"]["content_id"]);
for($i=0; $i < $contentCount; $i++) {
    $content[] = [
        "id" => $_POST["data"]["content_id"][$i],
        "detail" => $_POST["data"]["content_detail"][$i]
    ];
}
echo "<pre>";
print_r($content);
echo "</pre>";
PHP

Böylece $content değişkeninde verileri toplamış oldunuz.