Birden çok alan kümesini dahil ettiğim ajax formlarını yaparken bununla karşılaştım. Örneğin bir istihdam başvurusu almak. Profesyonel bir referans setiyle başlıyorum ve "Daha Fazla Ekle" yazan bir düğmem var. Bu, girdi kümesini tekrar dahil etmek için $ count parametresiyle bir ajax araması yapar (isim, kişi, telefon ... vb.) Bu, aşağıdaki gibi bir şey yaptığım için ilk sayfa aramasında iyi çalışıyor:
<?php
include('references.php');`
?>
Kullanıcı bir ajax çağrısı yapan bir düğmeye bastığında ajax('references.php?count=1');
Referanslar.php dosyasının içinde şöyle bir şey var:
<?php
$count = isset($_GET['count']) ? $_GET['count'] : 0;
?>
Ayrıca site genelinde parametreleri geçiren buna benzer başka dinamik içeriklerim de var. Sorun, kullanıcı gönder düğmesine bastığında ve bir form hatası olduğunda ortaya çıkar. Şimdi, dinamik olarak dahil edilen fazladan alan kümelerini dahil etmek için kodu çoğaltmamak için, dahil etmeyi uygun GET parametreleriyle ayarlayacak bir işlev oluşturdum.
<?php
function include_get_params($file) {
$parts = explode('?', $file);
if (isset($parts[1])) {
parse_str($parts[1], $output);
foreach ($output as $key => $value) {
$_GET[$key] = $value;
}
}
include($parts[0]);
}
?>
İşlev, sorgu parametrelerini kontrol eder ve bunları otomatik olarak $ _GET değişkenine ekler. Bu, kullanım durumlarım için oldukça iyi çalıştı.
İşte çağrıldığında form sayfasında bir örnek:
<?php
for ($i=0; $i<12; $i++) {
if (isset($_POST['references_name_'.$i]) && !empty($_POST['references_name_'.$i])) {
include_get_params(DIR .'references.php?count='. $i);
} else {
break;
}
}
?>
Belirli kullanım durumlarına uyum sağlamak için GET parametrelerini dinamik olarak dahil etmenin başka bir örneği. Bu yardımcı olur umarım. Lütfen bu kodun tam durumunda olmadığını unutmayın, ancak bu, herkesin kullanım durumları için oldukça iyi bir başlangıç yapması için yeterli olmalıdır.