Jump to content

[RESOLU] Débug, Retour 0 dans Classe db.php sur add()


stephan

Recommended Posts

Bonjour,



En relation avec ce post sur la modification d'un champ id qui passe de numérique à chaine.

Je suis désormais confronté à un autre problème ou ma limite de compétence est atteinte, j'explique :

dans la classe de création d'une nouvelle entrée dans la base de donnée createOrderSlip(), on lance la méthode "->add()"


static public function createOrderSlip(...)
{

if (!$orderSlip->add())
           return false;

}



Dans la méthode add()
on trouve cette autre méthode :

$this->id = Db::getInstance()->Insert_ID();



qui attribue id à $orderSlip

Donc $orderSlip=>id ou $this->id sert plus tard à faire le "join" entre deux tables , étant faux, ça plante !

Mon soucis, c'est qu'elle me renvoie 0, encore suite à cette modification de champs "numérique" en "string"

Pour entrer dans le détail, la méthode Insert_ID :

   abstract public function Insert_ID()



là , je coince ! %-P

je continue :

public static function getInstance()
   {
       if(!isset(self::$_instance))
           self::$_instance = new MySQL();
       return self::$_instance;
   }



Et là je double coince ! :cheese:

Dejà , suis-je sur la bonne voie pour résoudre mon dernier soucis ?

Et merci pour votre aide et expérience ;-)

Cordialement.

Link to comment
Share on other sites

Bon en fait la solution est simple, mais n'est pas vraiment une solution , plutôt une entourloupe .

Il suffisait d'y penser :

Lors de l'attribution du numéro d'id, fait manuellement de la classe orderSlip.php, il suffit de stoquer dans une variable de la classe le numéro ainsi créé.

$this->new_code="popopop";



(Mettez les bonnes valeurs, bien-entendu)

Et après, dans la fonction de la classe qui créer l'union entre les tables via l'id référant, il suffit de remplacer $this->id par $this->new_code étant donné que cette classe ne sert qu'à ça !!!

Le mieux aurait été de faire un teste sur l'id <> 0 et on utilise $this->new_code en lieu et place.

Bref,

Résolu, en espérant que cela puisse servir un jour à quelqu'un ;-P

Cordialement.

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...