3.2/5 Görüntülenme: 5909

Html Multi input post php foreach | Çoklu input gönderme ve kaydetme

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Multi input</title>
</head>
<body>
<?php
foreach($_REQUEST as $var=>$val) {
    $$var = $val;
foreach($Delivery as $key => $val){
echo $key.':'.$val.' - '.$Group[$key].'<br>'; // burada sadece deneme için ekrana yazıyor
// buraya mysql kaydetme veya günceleme kodu gelebilir.
}
 ?>
<form action="" method="get">
<input name="Delivery[3]" type="text" value="a1">-<input name="Group[3]" type="text" value="a2">
<br>
<input name="Delivery[5]" type="text" value="b1">-<input name="Group[5]" type="text" value="b2">
<br>
<input type="submit" value="Submit">
</form>
</body>
</html>

Yukarıdaki kodumuzu aynı satırdaki verileri topluca işlemek istediğimizde kullanabiliriz.
Kısaca çalışması: mysqlimizde ID, Delivery, Group şeklinde sütunlarımız olsun;
Atıyorum 6 tane Delivery ve Group değerini aynı anda güncellemek istersek;
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="a">
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="b">
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="c">
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="d">
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="e">
<input name="Delivery[<?php echo $ID; ?>]" type="text" value="f">

<input name="Group[<?php echo $ID; ?>]" type="text" value="x">
<input name="Group[<?php echo $ID; ?>]" type="text" value="y">
<input name="Group[<?php echo $ID; ?>]" type="text" value="z">
<input name="Group[<?php echo $ID; ?>]" type="text" value="w">
<input name="Group[<?php echo $ID; ?>]" type="text" value="q">
<input name="Group[<?php echo $ID; ?>]" type="text" value="k">


şeklinde inputlar yazdırırız ve bunu post ettiğimizde postu alan php dosyamız;

foreach($_REQUEST as $var=>$val) { $$var = $val; // önce tüm postları alarak değişkene çeviriyoruz.
foreach($Delivery as $key => $val){ // $key inputlardaki farklı ID lerimiz
echo $key.':'.$val.' - '.$Group[$key].'<br>'; // burada sadece deneme için ekrana yazıyor - mysql kaydetme veya günceleme kodu gelebilir.
}
Sonuç olarak ekrana şu şekilde çıktı verir;
1:a - x
2:b - y
3:c - z ...

id: delivery - group  Bu mantıkla Mysql'e şu id nin delivery ve group değerini güncele diyebiliriz.

Konu (137) ile ilgili admin @ limitsizbilgi.com adresine E-mail gönderebilirsiniz. İsa Şahintürk