Bir formdan aldıktan sonra bir dizi değişkeni değerlerini alma ve listeleme yardıma mı ihtiyacınız var

2 Cevap

i buy.php bu var

<form action="cart.php">
    <?php 
    echo'<input style="width:10px; margin-left:9px; " name="price[]" type="checkbox" value="' . $variety['price']. '"  />
         <input name="variety[]" type="hidden" value="' . $variety['variety']. '"  />';
    ?>
</form>

Sonra onu seversiniz cart.php aldığınız için

<?php
$aDoor= $_POST['price'];
$aDoor1= $_POST['variety'];
?>

$ Adoor bir dizedir ve $ Adoor numaraları

Kolayca komut dosyası içinde mi cart.php olabilir numaralarını Özetle:

echo "Sum of vlues = ".array_sum($aDoor);

Ama nasıl fiyatlarının $ Adoor solundaki $ aDoor1 içindeki dizeleri listeleyebilirsiniz? ve fiyatları toplamı olarak yukarıda $ Adoor altındaki değerler script toplamını yerleştirmek için?

$ ADoor1 bir dizi olduğu için ben her bir öğeyi listelemek için bir foreach döngü kullanabilirsiniz ama o zaman sadece $ aDoor1 dizi değişkenin gerçek değerleri yerine kelime dizi basacaktır

foreach($aDoor1 as $variety) {
echo '<div>'.$variety['variety']. '</div>
}

Php o kadar bilmiyorum, teşekkür ederim

2 Cevap

Kendi adını PHP otomatik olarak çevirir sonra [] sözdizimi kullanarak form öğelerini oluştururken, bunu belirterek olmasa da bu otomatik oluşturulan artan indeksler (0, 1, 2, 3, vb ile bir diziye .) Onlar eşleştirilmiş form alanları için eşleşen olacak gibi sizin elemanların her dizi indeksi başvurabilirsiniz:

foreach($aDoor1 as $index => $variety) {
  echo '<div>'.$aDoor[$index].': '.$variety. '</div>';
}

Eğer çeşitlerinin her biri için benzersiz bir tanımlayıcı varsa ben yerine elle netlik için form öğeleri dizine öneriyoruz:

<form action="cart.php">
    <?php 
    echo'<input style="width:10px; margin-left:9px; " name="price[' . $variety['id'] . ']" type="checkbox" value="' . $variety['price']. '"  />
         <input name="variety[' . $variety['id'] . ']" type="hidden" value="' . $variety['variety']. '"  />';
    ?>
</form>

ve daha sonra yukarıdaki ile aynı içlerinden döngü.

Eğer bir çeşitlilik her fiyat için her zaman var olduğunu biliyorsanız, ilk parametre tuşları (bu durumda çeşitlilik) olmak ve ikinci değerleri (fiyat) olmak array_combine() kullanabilirsiniz.:

$price_list = array_combine($_POST['variety'], $_POST['price']);

Bu yazdırmak istiyorsanız o zaman yapabilirsiniz:

foreach($price_list as $item => $price) {
echo "<dt>$item</dt><dd>$price</dd>"; 
}