cs_lig
Messages postés1Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention26 mai 2004
-
26 mai 2004 à 14:12
phpwankenobi
Messages postés152Date d'inscriptionjeudi 10 avril 2003StatutMembreDernière intervention18 novembre 2004
-
27 mai 2004 à 07:14
Salut!!!
Je soumet mon probléme à la communauté codes-sources...
Explication :
C'est un site de vente en ligne. le visiteur sélectionne un album sur une page catalogue. il est ajouté dans le caddie. Sur cette page caddie il peu modifier la quantité qu'il souhaite acheter et surtout supprimer un album.
Le caddie est géré par une classe :
J'ai une méthode ci dessous pour ajouter un album à ma liste : (en fait elle est + compliqué mais je garde l'essentiel :)
function addalbum()
{
$this->listealbum[] = new album(val1, val2, ...)
$this->nbtotalalbum++;
}
.. et une autre méthode pour supprimer :
function delalbum($id)
{
switch($id)
{
case(0): array_shift($this->listealbum);
break;
case($this->nbtotalalbum):array_pop($this->listealbum);
break;
//ces deux cas fonctionne!!!
Probléme : le prochain cas ne fonctionne pas.: il ne renvoie pas de message d'erreur mais c lorsque je veu réafficher ma liste aprés une suppression que ça foire ..
Je cherche à supprimer un album de ma liste.
Lorsque je supprime le premier album ou le dernier album du caddie ca fonctionne ..
Mais lorsque je prend par exemple l'album en 3eme position de ma liste, il ne supprime pas le bon ...
J'ai essayé de supprimer un album de ma liste avec seulement la fonction array_splice mais lorsque je veu afficher tout mes éléments de ma liste jusquà la variable nbtotalalbum, il n'affiche plus aprés l'élément précedemmant supprimé.
J'ai l'impression que cette fonction laisse un vide dans mon tableau, peut être faudrait il décaler alors tout les albums.
Si quelqu'un peut éclairer ma lanterne, je sui toute ouï ... Merci d'avance!!