Bug produit_details.php : $prod

2 messages dans ce sujet

Posté(e) · Signaler ce message

Bonsoir,

Je viens de découvrir ce qui est je pense un bug :

Fichiers impliqués :

/modeles/default/haut.php : code fil d'ariane

/achat/produit_details.php

/modeles/default/produit_details.php

J'ai tenté d'atteindre un produit dont l'id n'existait pas dans la base, afin de tester le message d'erreur.

Dans le fichier /modeles/default/produit_details.php, le test se fait via la ligne :

if (!$prod) { echo NO_FIND_PRODUCT; return false; } 

Le problème, c'est que $prod est initialisé même si le produit n'est pas trouvé, voir le fichier /modeles/default/haut.php

   if (defined('IN_CATALOGUE_PRODUIT')) {echo "".affiche_arbre_categorie(vn($prod['categorie_id'])).""; }

Dans le code ci-dessus, la variable est déclarée lors de sa transmission à la fonction.

Il faudrait donc vérifier que la variable existe ...

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Ce problème vient du fait que vn() est une fonction qui prend son attribut en tant que référence et non pas valeur, donc ça passe la variable $prod au module qui lui va incidieusement lui définir une case de tableau $prod['categorie_id'] (qui est juste initialisée mais du coup $prod n'est plus vide) même si la variable valait false avant.

Pour corriger cela il faut donc au début de /modeles/default/produit_details.php mettre un test sur une case de $prod en plus de voir si il est vide ou pas :

if (empty($prod) || empty($prod['id'])) {

echo NO_FIND_PRODUCT;

return false;

}

Cette correction sera incluse dans PEEL Premium 5.4

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping