Tableau array et session panier? [Résolu]

newlc 56 Messages postés samedi 24 juillet 2004Date d'inscription 5 juillet 2010 Dernière intervention - 20 avril 2009 à 23:11 - Dernière réponse : kohntark 3708 Messages postés lundi 5 juillet 2004Date d'inscription 27 avril 2012 Dernière intervention
- 23 avril 2009 à 08:47
Salut à tous,
je cherche à pouvoir ajouter une valeur a chaque fois que l'utilisateur entre une info dans un champs de saisie simple mais apres chaque chargement l'info ne s'ajoute pas dans mon tableau, voici mon code apres validation du formulaire.....(je sais qu'il n'est pas terrible, donc soyez indulgent).
////////////////////////////////mon code////////////////////////////////////////////////
<?php
session_start();
$_SESSION['panier'] = array();
foreach( $_POST['test'] as $key => $value ) {


array_push($_SESSION['panier'],$value); }//ajoute  la nouvelle valeur


var_dump($_SESSION['panier']);


?>
Merci de votre aide!
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Arto_8000 1051 Messages postés lundi 7 mars 2005Date d'inscription 13 juillet 2010 Dernière intervention - 21 avril 2009 à 01:05
3
Merci
Il faut faire attention aux variables de session, quand on les définit à chaque début de page elles sont réinitialisées du même coup. Ce qu'il te manque c'est un petit test qui vérifie si la variable session "panier" est définit comme tableau pour éviter que la valeur soit écrasé par un tableau vide à chaque fois que tu envoies des données.

<?php
session_start();

if (!isset($_SESSION['panier']) || !is_array($_SESSION['panier'])) {
     $_SESSION['panier'] = array();
}

foreach( $_POST['test'] as $key => $value ) {
    array_push($_SESSION['panier'],$value);
}
var_dump($_SESSION['panier']);
?>

Merci Arto_8000 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 119 internautes ce mois-ci

Commenter la réponse de Arto_8000
newlc 56 Messages postés samedi 24 juillet 2004Date d'inscription 5 juillet 2010 Dernière intervention - 21 avril 2009 à 23:28
0
Merci
merci arto, je teste ça!!!!
Commenter la réponse de newlc
newlc 56 Messages postés samedi 24 juillet 2004Date d'inscription 5 juillet 2010 Dernière intervention - 22 avril 2009 à 22:18
0
Merci
j'ai une erreur ds le foreach que je ne vois pas dans ton code????tu la vois toi ARTO??

Warning: Invalid argument supplied for foreach
Commenter la réponse de newlc
Arto_8000 1051 Messages postés lundi 7 mars 2005Date d'inscription 13 juillet 2010 Dernière intervention - 23 avril 2009 à 01:42
0
Merci
Pour faire un foreach sur élément, il faut que ça soit un tableau. Ton $_POST['test'] n'est pas un tableau. En fait, généralement les valeurs envoyées en POST ou en GET sont des valeurs textes ou numériques.

Vérifie que ce que tu veux faire n'est pas tout simplement ceci :

<?php
session_start();

if (!isset($_SESSION['panier']) || !is_array($_SESSION['panier'])) {
     $_SESSION['panier'] = array();
}

if (isset($_POST['test'])) {
    array_push($_SESSION['panier'], $_POST['test']);
}

var_dump($_SESSION['panier']);
?>

Note : Il est aussi important de vérifier si les valeurs envoyées en paramètre existe ou non.
Commenter la réponse de Arto_8000
kohntark 3708 Messages postés lundi 5 juillet 2004Date d'inscription 27 avril 2012 Dernière intervention - 23 avril 2009 à 08:47
0
Merci
Salut,

Il y a fort à parier que $_POST['test'] n'est pas un tableau.

Cordialement,

Kohntark -
Commenter la réponse de kohntark

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.