Je me prends la tête sur un détail stupide sans m'en sortir depuis quelques heures... Voici donc :
- J'ai une variable de session $_SESSION['liste_indices'] contenant pour commencer tous les indices de la variable $_SESSION['panier']. Exemple : si mon panier contient 5 articles, ma variable $_SESSION['liste_indices'] sera Array(0, 1, 2, 3, 4).
- Par soumission de formulaire, je sélectionne des éléments du panier pour les affecter à différentes adresses de livraison.
Du coup, je dois retirer les indices du panier correspondant de ma variable $_SESSION['liste_indices'].
J'ai essayé à coup de array_values et autres trucs plus ou moins vaseux, mais je n'y arrive pas... Un peu de code concret peut-être pour y voir plus clair :
Code : Tout sélectionner
$CHAINE_PANIER = array();
for($i=0 ; $i<sizeof($_SESSION['panier']) ; $i++)
{
// Si la case a été cochée, on ajoute cet article à la liste des articles correspondant à cette adresse de livraison
// et on le supprime de la liste des articles non affectés
if($_POST['item_'.$i] == 1)
{
$CHAINE_PANIER[] = $i;
unset($_SESSION['liste_indices'][$i]);
}
}
$_SESSION['liste_indices'] = array_values($_SESSION['liste_indices']);- $_POST['item_'.$i] correspond à une case à cocher dans le formulaire (vous vous en seriez doutés !)
- $CHAINE_PANIER est ensuite inscrit dans une variable $_SESSION['livraison']
Je crois que je m'embrouille entre les valeurs et les indices, mais ça fait trop longtemps que j'ai les yeux dessus, j'arrive plus à voir
Merci pour votre aide !