Jump to content

pb BDD/smarty -> requête LEFT JOIN: 2 champs ont le même nom !!!


Recommended Posts

Salut.
J'ai la requête suivante:

$sql='SELECT p.`id_product`,pl.name,i.`id_image`,i.`cover`,m.name
               FROM '._DB_PREFIX_.'product AS p
               LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (p.`id_product` = pl.`id_product`)
               LEFT JOIN `'._DB_PREFIX_.'manufacturer` m ON (p.`id_manufacturer` = m.`id_manufacturer`)
               LEFT JOIN `'._DB_PREFIX_.'image` i ON (p.`id_product` = i.`id_product`)
               WHERE  pl.`id_lang` = '.(int)($id_lang).'
               AND i.`cover`=1
               AND (p.`id_product` = '.(int)$p_1.' OR p.`id_product` = '.(int)$p_2.' 
               OR p.`id_product` = '.(int)$p_3.' OR p.`id_product` = '.(int)$p_4.' OR p.`id_product`= '.(int)$p_5.')';
$products = Db::getInstance()->ExecuteS($sql);



Dans le tpl, je veux le: le nom du produit et le nom du fabricant.
Le soucis: nom du produit donne: {$product.name} et le nom du fabricant: {$product.name}.


Vous avez la petite astuce ?
(perso je trouve que la base prestashop pourrait être mieux "définie". Pour la table product_lang, j'aurai mis du pl_id_product, du pl_name et du p_name dans la table product... mais bon j'dis ça, j'dis rien...

Merci pour vos réponses.

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