vanille69 Posted January 6, 2013 Share Posted January 6, 2013 (edited) Bonjour à tous, j'ai un petit bout de code qui est intégré à classes/PDF.php qui me sert à lister des numéros de série par produits. Voici le code actuel: for($i=1;$i<$product['product_quantity']+1;$i++){ $sql="SELECT `numero` FROM `"._DB_PREFIX_."numero_de_serie` where `id_product`='".$product['product_id']."' and `id_order`='".self::$order->id."' and `quantite`='".$i."';"; if($result=Db::getInstance()->ExecuteS($sql) and $result[0]['numero']!=''){ $this->Cell(50, 4, self::l('Numero de serie').' '.$i." : ".$result[0]['numero'], 'N'); } } Cependant, je dois le transformer en array pour chaque produit afin de les lister suite à ma question sur ce post http://www.prestasho...ost__p__1058538 J'ai donc un début du code mais, je ne vois pas comment faire sachant que je dois traiter chaque id_product puis extraire les numéro de série. Si quelqu'un pouvait m'aider, ce serait trés sympathique de sa part. Merci d'avance /* Ici il faudra extraire vos numeros de serie */ /* On considere qu'ils sont dans le tableau $results */ $results = array('XXX', 'YYY', 'ZZZ'); // Valeur de test qui sera a supprimer au final ! if (count($results)) { // pour la cellule description on fabriquera une chaine en ligne "Serials : XXX - YYY - ZZZ" if ($Aff == 'desc') { $serials = (count($results) > 1 ? 'Serials : ' : 'Serial : '); $separateur = ' - '; } // pour la cellule reference ce sera une chaine avec des retours a la ligne "XXX\nYYY\nZZZ" else { $serials = ''; $separateur = chr(13).chr(10); // retour a la ligne "\n" } foreach ($results as $key => $result) if ($key == 0) $serials .= $result; // premier numero else $serials .= $separateur.$result; // numeros suivants } else $serials = null; // si il n'y a pas de numero de serie Edited January 10, 2013 by vanille69 (see edit history) Link to comment Share on other sites More sharing options...
Mellow Posted January 10, 2013 Share Posted January 10, 2013 D'après ce que je vois de la requete sql, les numéros semblent être récupérés successivement dans $result[0]['numero'] Alors, si je ne me trompe pas, en faisant ça : $results = array(); for($k=1;$k<(int)$product['product_quantity']+1;$k++) { $sql="SELECT `numero` FROM `"._DB_PREFIX_."numero_de_serie` where `id_product`='".$product['product_id']."' and `id_order`='".self::$order->id."' and `quantite`='".$k."';"; if($result=Db::getInstance()->ExecuteS($sql) and $result[0]['numero']!=''){ $results[] = $result[0]['numero']; // Ajout dans le tableau } } je pense que tu devrais obtenir le tableau $results au bon format pour la suite... PS: j'ai mis $k parce qu'à cette endroit il y a déjà un $i qui se balade. Link to comment Share on other sites More sharing options...
neastea18 Posted January 10, 2013 Share Posted January 10, 2013 Bonjour Mellow, Merci beaucoup. J'aurais du poster mes essais (la seule petite différence étant le i en k) Je pensais que c'était impossible avec fpdf. Cordialement, Link to comment Share on other sites More sharing options...
Mellow Posted January 10, 2013 Share Posted January 10, 2013 Ok, donc finalement ça marche alors ? tu obtiens bien tes numéros de séries dans $results ? Link to comment Share on other sites More sharing options...
neastea18 Posted January 10, 2013 Share Posted January 10, 2013 (edited) Bonsoir, Oui en effet, je vais mettre résolu Merci encore pour l'aide et tes modules ! Edited January 10, 2013 by aPlancon69 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now