Jump to content

PB pas de case à cocher programme parrainage


Recommended Posts

  • 2 months later...

Bonjour, moi j'ai la case à cocher dans mon module de parrainage de prestashop v1.1. Cependant l'erreur s'affiche tout de même: Veuillez cocher au moins une case

De plus lorsque je parraine un filleul il se met directement dans "mes filleuls" et ne passent même pas par "filleuls en attente".

Merci de vos réponses!
Car mis à part ça tout est top fonctionnel!!!!

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
  • 1 month later...

j'ai eu le même pb.
Sous Firefox la case s'affichait toujours et sous IE7, parfois, la case disparaissait, sans AUCUNE raison.

J'ai résolu le pb : étant donné qu'il y avait trop de bugs dans ce module, j'ai décidé de ne pas l'utiliser ;) (.. pour le moment, et si personne ne le fait, un jour p-ê, je le débugguerai..)

Link to comment
Share on other sites

Bonjour,

Le probleme concernant le parrainage provient du fait que l'insertion en base ne se passe pas correctement.

En effet, Il essaie d'inserer des valeurs unique déjà existante.

Le soucis vient du fait que la valeur null est pas gérée. Cette valeur est remplacé par un '0'.

Or, dans la structure de la base de données, les champs 'id_customer' et 'id_discount' doivent avoir une valeur unique.
(cf creation de la table dans le fichier modules/referralprogram/referralprogram.php methode 'installDB()').

Afin de corriger ce dysfonctionnement, je vous propose de modifier la méthode 'getFields()' de la classe ReferralProgramModule situé dans le fichier modules/referralprogram/referralprogramModule.php
Remplacer :

$fields['id_customer']           = intval($this->id_customer);
$fields['id_discount']           = intval($this->id_discount);



Par :

$fields['id_customer']           = $this->id_customer;
$fields['id_discount']           = $this->id_discount;



Ainsi, lors de l'ajout de nouveau filleuls, il executera une insertion correcte.

De plus, ceci corrige aussi le problème du passage d'un filleul directement dans la partie 'MES FILLEULS' sans passer par la partie 'FILLEULS EN ATTENTES'.

Dites moi si ca marche aussi pour vous.

Link to comment
Share on other sites

  • 9 months later...
  • 4 months later...

Bonjour,

Je me permets d'apporter une petite modification au post de Mambe. Sa correction est juste et fonctionne très bien (merci beaucoup, ça nous a mis sur la voie ;) ), par contre on peut améliorer la sécurité du code en remplaçant :

$fields['id_customer']           = intval($this->id_customer);
$fields['id_discount']           = intval($this->id_discount);
$fields['id_discount_sponsor']   = intval($this->id_discount_sponsor);



PAR :

$fields['id_customer']           = $this->id_customer ? intval($this->id_customer) : NULL;
$fields['id_discount']           = $this->id_discount ? intval($this->id_discount) : NULL;
$fields['id_discount_sponsor']   = $this->id_discount_sponsor ? intval($this->id_discount_sponsor) : NULL;



Voili voilou :)



Gaëlle
Développeuse - Groupe Sitti
Spécialiste E-commerce
Agence certifiée Or
http://www.sitti.fr

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...