php oturumda mutiple değerleri saklamak

3 Cevap php

Ben bir alışveriş sepeti oldukça benzer olduğu, php bir senaryo yazıyorum. Bir kullanıcıları i bir veri tabanında depolanması olmadan, bir oturum değişkeni ProductID eklemeniz gerekir belli bir ürün eklediğinde ne ben yapmak istiyorum. böylece her zaman kullanıcı productid bir oturum değişkeni saklanan gereken bir ürün ekler.

ve kullanıcı kasaların i tüm productids almak ve görüntülemek için gerektiğinde?

Bazı biri nasıl bunu bana açıklayabilir misiniz? coz im 1 üründen ama emin değilim nasıl birden değerlerini depolamak ve almak için ince.

Herhangi bir yardım çok takdir edilecektir

3 Cevap

Bir Array koyun Session. Dizi öğeleri ekleyin.

$_SESSION['cart'] = array();
$_SESSION['cart'][] = $apples;
$_SESSION['cart'][] = $oranges;
$_SESSION['cart'][] = $pears;

Note: replace $apples, $oranges ve $pears ürün kimlikleri ile.

PHP başka dizi, örneğin gibi dizi erişebilirsiniz count öğeleri:

echo count($_SESSION['cart']);

ve iterate öğeleri üzerinde için:

foreach($_SESSION['cart'] as $item)
{
    echo $item;
}

Ayrıca bir nesnenin içine Session sarın ve bir yöntem arayüz üzerinden sepetinize erişim sağlamak, ama ben açıklamak için başkası için o bırakabilir.

Her seans bir ilişkisel dizidir. Senin gibi, onun içinde diğer diziler saklayabilirsiniz

$_SESSION['products']=array();
$_SESSION['products'][]='123123'
$_SESSION['products'][]='cow_34526'

ve daha sonra başka bir dizi ile bu ile çalışabilir, yani

foreach($_SESSION['products'] as $item){
  //display or process as you wish
  }

index.php adlı bir dosyada aşağıdaki koymak ve bir testi verir:

<?php
session_start();
if(isset($_POST['product'])) {
    $products = isset($_SESSION['products']) ? $_SESSION['products'] : array();
    $products[] = $_POST['product'];
    $_SESSION['products'] = $products;
}
?>

<html>
    <body>
        <pre><?php print_r($_SESSION); ?></pre>
        <form name="input" action="index.php" method="post">
            <input type="text" name="product" />
            <input type="submit" value="Add" />
        </form> 
    </body>
</html>