zabbai Posted March 29, 2011 Share Posted March 29, 2011 Bonjour à tous,je fais appel à vous car je rencontre un problème avec une requête SQL. Je voudrais afficher dans le tableau adminCustomers (BO) deux champs issus de la table address.Pour récupérer et afficher 1 valeur, pas de soucis.récupération et affichage d'une valeur (fonctionne parfaitement) : $this->_select = '(SELECT d.phone FROM '._DB_PREFIX_.'address d WHERE d.id_customer = a.id_customer LIMIT 1 ) as phone'; 'phone' => array('title' => $this->l('Phone'), 'width' => 80), Mais récupérer la deuxième s'avère être une vraie prise de tête. J'ai tenté par différent moyen de l'afficher (en doublant ma requête et en modifiant le nom du champs demandé, en créant une requête contenant les deux valeurs, etc...), mais je n'ai pas réussi.Toute aide serait la bienvenue...Merci d'avance. Link to comment Share on other sites More sharing options...
Broceliande Posted March 29, 2011 Share Posted March 29, 2011 pour les tables supplémentaires , il vaut mieux utiliser $this->_join = ...eg: $this->_join = 'LEFT JOIN `'._DB_PREFIX_.'table2` t2 ON (t2.`id_customer` = a.`id_customer`) LEFT JOIN `'._DB_PREFIX_.'table3` t3 ON (t3.`field3` = t2.`field3`)'; Link to comment Share on other sites More sharing options...
zabbai Posted March 30, 2011 Author Share Posted March 30, 2011 tout d'abord, Broceliande merci d'avoir répondu à mon appel.Votre réponse associée à quelques recherches sur cette fonction SQL m'ont permis d'en comprendre un peu mieux son utilité et son fonctionnement.Mais dans l'utilisation, le résultat obtenu n'est pas celui souhaité.Lorsque j'utilise de manière brute la requête que vous m'avez présenté, la table address est bien rattachée à la table principale, mais le résultat affiché n'est pas celui escompté : - un client possédant plusieurs adresses apparait plusieurs fois, tandis que les champs dont je souhaitais afficher les valeurs restent (désespérément) vides.J'ai donc effectué plusieurs essais utilisant l'idée de base que vous avez émise couplé à d'autres éléments issus des recherches que j'ai faite, mais toutes mes tentatives se sont révélées infructueuses, avec le plus souvent ce si beau message de Prestashop : Requête SQL invalide.J'en reviens donc à ma question initiale : comment récupérer les valeurs de 2 champs (ex: phone et phone_mobile) de la table address pour les affichées dans le tableau AdminCustomers du BO?merci encore de votre aide 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