begin process at 2012 05 31 05:34:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Panier : Pb de quantité


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Panier : Pb de quantité

dimanche 29 mars 2009 à 17:43:03 | Panier : Pb de quantité

Fo0Zie

Bonjour à tous les codeurs !

Voilà mon problème que j'arrive en vain à résoudre. J'utilise un panier pour un mini site de vente, il fonctionne très bien, jusqu'au moment ou je souhaite supprimer un article.
Je m'explique, si j'ai une quantité supérieur à 1 d'un article de mon panier et que je clique sur supprimer (censé me supprimer qu'1 article) il me supprime tous les articles de la référence sélectionné.

Quand j'ai regardé mon code cela été normal, mais en faite je n'arrive pas à mettre en place cette condition qui ai que si ma qté est > 1 alors je supprime qu'un seul article.

voici ma fonction supprimer article :

function supprimerArticle($numProduit)
{
    if(count($_SESSION['panier'][$numProduit]) > 1)
    {
        $_SESSION['panier'][$numProduit] --;
    }   
    else
    {
        // On crée un panier "tampon" qui va être notre panier sans les éléments à supprimer
        $tmp=array();
        $tmp['numProduit'] = array();
        $tmp['libelleProduit'] = array();
        $tmp['qteProduit'] = array();   
        $tmp['prixProduit'] = array();
        // On remplit ledit panier "tampon"
        for($i = 0; $i < count($_SESSION['panier']['numProduit']); $i++)
        {
        // On transfert tous, sauf l'article à supprimer
            if ($_SESSION['panier']['numProduit'][$i] !== $numProduit)
            {
                array_push($tmp['numProduit'],$_SESSION['panier']['numProduit'][$i]);
                array_push($tmp['libelleProduit'],$_SESSION['panier']['libelleProduit'][$i]);
                array_push($tmp['qteProduit'],$_SESSION['panier']['qteProduit'][$i]);   
                array_push($tmp['prixProduit'],$_SESSION['panier']['prixProduit'][$i]);
            }
        }
        //    On réaffecte notre panier via les valeurs du panier tampon que l'on supprime par la suite
        $_SESSION['panier'] =  $tmp;
        unset($tmp); 
    }         
}

Merci d'avance pour votre aide
dimanche 29 mars 2009 à 20:43:40 | Re : Panier : Pb de quantité

nhervagault

Administrateur CodeS-SourceS
Salut,

Je ne connais pas l'operateur !==
le problème vient peut etre de là

Je connais === mais pas le tient.

Si tu es en PHP5 (désolé je ne pratique plus) il serait plus intéressant de passer par des classes que par les arrays.
Tu as les tableaux associatifs aussi qui peuvent rendre le code plus maintenable.

Bon courage
dimanche 29 mars 2009 à 22:00:29 | Re : Panier : Pb de quantité

coucou747

Administrateur CodeS-SourceS
!== c'est une comparaison fortement typee
=== aussi

$a !== $b c'est comme gettype($a) == gettype($b) && $a == $b
lundi 30 mars 2009 à 19:53:27 | Re : Panier : Pb de quantité

kohntark

Membre Club
Salut,

J'ai juste jeter un oeil rapide (et ça fais mal, j'lai pas r'trouvé)
Je dis peut être une connerie, mais j'ai l'impression qu'il y a un gros problème de logique et beaucoup d'erreurs dans ton code.
Ta fonction devrait se résumer à ça :
function supprimerArticle($indexPanier) {
    foreach ($_SESSION['panier'] as $k=>$v) {
        unset($_SESSION['panier'][$k][$indexPanier]);
    }
}
Cela implique bien sur que tu passe l'index du produit concerné à ta fonction (le "$i" dans ton code)
Je ne connais pas ton code, mais c'est en principe très simple à réaliser puisque l'utilisateur clique sur le produit qu'il souhaite supprimer (tu mets alors l'index dans le value du champ)

Par ailleurs :
if(count($_SESSION['panier'][$numProduit]) > 1)
=>
Ne devrait sans doute pas exister, le numProduit devrait toujours être unique vu que tu as un tableau quantité

Cordialement,

Kohntark -


lundi 30 mars 2009 à 20:42:09 | Re : Panier : Pb de quantité

Fo0Zie

Ah oui peut-être, mais je ne vois pas à quoi correspond l'index du panier.
"Cela implique bien sur que tu passe l'index du produit concerné à ta fonction (le "$i" dans ton code)" => je ne sais comment faire.

Sinon j'ai suivi le tuto de mon panier ici et pour le test if(count($_SESSION['panier'][$numProduit]) > 1) j'étais vraiment à coté ...


Cette discussion est classée dans : session, array, tmp, panier, numproduit


Répondre à ce message

Sujets en rapport avec ce message

probleme d'array (panier) [ par lyoan ] Bonjour à tous, Je viens de commencer la création d'un panier et j'avoue rencontrer quelques problèmes. Voici mon code, dites moi si vous voyez des ch Problème Session et array [ par taxitat ] Bonjour à tous,J'essaye de créer un panier d'achat. J'en suis au stade expérimental et pour ne pas me casser la tête, à ce stade je "remplis" mon pani Panier : Pb ajout d'articles [ par Fo0Zie ] Bonjour à tous,Voici mon problème : je dispose d'un panier pour mon site de vente en ligne. Mon problème est lorsque je clique sur "Ajouter un produit tableau array et session panier? [ par newlc ] 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 Probleme de session [ par pam006 ] Bonjour, Je désirerai créer un panier virtuel en php 5. J'ai trouver un super tuto : http://jcrozier.developpez.com/articles/web/panier/ Sauf que, q Array et session [ par Astroma ] Bonjour, Avant de vous poser mon problème, je voulais vous remercier pour toutes les informations et les conseils que j'ai pu trouver sur ce forum. Warning: mysql_fetch_array() [ par Denzel68 ] Bonjour voila je faix un petit bloc de login mais je un petit problème pour récupéré les donnes de l'avatar: Warning: mysql_fetch_array(): supplied ar fermer une session [ par joujma5 ] bonjour j'ai un problème avec les sessions en faite j'ai deux session une session panier et une autre pour le client,une fois j'ai commandé un produit script panier avec session - pb enregistrement plusieurs articles dans table commande [ par magatha ] Bonjour à tous, j'ai mis en place un systeme de panier en php avec session pour un futur site de vente en ligne. cela fonctionne bien j'ai plusieurs t PFE [ par samia22 ] bonsoir a tous, j'ai une probleme lors de l'ajout des produits au pannier.. le client doit s'authentifier avant d'ajouter des produits mais ca ne mar


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales