par
Cyrano » 15 juin 2005, 08:20
Les variables de sessions peuvent être des tableaux multi-dimensionnels, tu peux stocker les articles dans des tableaux indexés dont le nombre d'index s'incrémente à chaque ajout d'un article. En utilisant un tableau à plusieurs dimensions, tu peux t'y retrouver plus facilement, exemple:
$_SESSION['panier'] est un tableau associatif contenant trois index:
- ref_produit
- quantite
- prix_unitaire
Pour ajouter un produit, tu vas ajouter successivement la référence du produit, la quantité commandée et le prix unitaire du produit et tu auras donc un tableau qui ressemblera à:
$_SESSION['panier']['ref_produit'][0] = "xyz123";
$_SESSION['panier']['quantite'][0] = 1;
$_SESSION['panier']['prix_unitaire'][0] = 12.95;
L'utilisation des boucles va te permettre de parcourir ce tableau. Pour compter combien d'articles sont dans le panier, tu fais un count() sur l'index "ref_produit" par exemple, et non sur "panier" qui dans le cas présent sera toujours à 3. Quand tu as le nombre d'article, il devient facile de parcourir le tableau dans une boucle for():
<table>
<?php
$nb_art = count($_SESSION['panier']['ref_produit']);
for($i = 0; $i < $nb_art; $i++)
{
?>
<tr>
<td><?php echo($_SESSION['panier']['ref_produit'][$i]); ?></td>
<td><?php echo($_SESSION['panier']['quantite'][$i]); ?></td>
<td><?php echo($_SESSION['panier']['prix_unitaire'][$i]); ?></td>
<td>Total : <?php echo($_SESSION['panier']['prix_unitaire'][$i] * $_SESSION['panier']['quantite'][$i]); ?></td>
</tr>
<?php
}
?>
</table>
Voilà, ce n,est qu'un exemple basique, ta variable de session Panier peut être beaucoup plus complexe, mais le principe de base est là.
Les variables de sessions peuvent être des tableaux multi-dimensionnels, tu peux stocker les articles dans des tableaux indexés dont le nombre d'index s'incrémente à chaque ajout d'un article. En utilisant un tableau à plusieurs dimensions, tu peux t'y retrouver plus facilement, exemple:
$_SESSION['panier'] est un tableau associatif contenant trois index:
- ref_produit
- quantite
- prix_unitaire
Pour ajouter un produit, tu vas ajouter successivement la référence du produit, la quantité commandée et le prix unitaire du produit et tu auras donc un tableau qui ressemblera à:
[php]$_SESSION['panier']['ref_produit'][0] = "xyz123";
$_SESSION['panier']['quantite'][0] = 1;
$_SESSION['panier']['prix_unitaire'][0] = 12.95;[/php]
L'utilisation des boucles va te permettre de parcourir ce tableau. Pour compter combien d'articles sont dans le panier, tu fais un count() sur l'index "ref_produit" par exemple, et non sur "panier" qui dans le cas présent sera toujours à 3. Quand tu as le nombre d'article, il devient facile de parcourir le tableau dans une boucle for():
[php]<table>
<?php
$nb_art = count($_SESSION['panier']['ref_produit']);
for($i = 0; $i < $nb_art; $i++)
{
?>
<tr>
<td><?php echo($_SESSION['panier']['ref_produit'][$i]); ?></td>
<td><?php echo($_SESSION['panier']['quantite'][$i]); ?></td>
<td><?php echo($_SESSION['panier']['prix_unitaire'][$i]); ?></td>
<td>Total : <?php echo($_SESSION['panier']['prix_unitaire'][$i] * $_SESSION['panier']['quantite'][$i]); ?></td>
</tr>
<?php
}
?>
</table>
[/php]
Voilà, ce n,est qu'un exemple basique, ta variable de session Panier peut être beaucoup plus complexe, mais le principe de base est là.