Bonjour,

j'ai un copié mon site web sur un nouveau serveur. Mais maintenant, j'ai un problème avec plusieurs requêtes sql, dont celle ci.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 
$sql="Select p.produit_id,  IF(produit_statut_id=2 or produit_attribut_statut_id=2,CONCAT('<font color=\"red\">',produit_nom,'</font>'),CONCAT('<font color=\"green\">',produit_nom,'</font>')), produit_ref_frs, IF(produit_attribut_id IS NOT NULL,CONCAT(produit_ref,' ',produit_attribut_ref),produit_ref) AS produit_ref, produit_option_valeur_nom";
$sql.=" , IF(produit_attribut_quantite IS NOT NULL,produit_attribut_quantite,produit_quantite) as stock";
$sql.=" , IF(produit_attribut_alerte IS NOT NULL,produit_attribut_alerte,produit_alerte) as alerte";
$sql.=" FROM produit p";
$sql.=" LEFT JOIN fournisseur f ON (f.fournisseur_id = p.fournisseur_id)";
$sql.=" LEFT JOIN produit_attribut pa ON (pa.produit_id = p.produit_id AND produit_attribut_quantite <= produit_attribut_alerte)";
$sql.=" LEFT JOIN produit_option_valeur pov ON (pov.produit_option_valeur_id = pa.produit_option_valeur_id)";
$sql.=" WHERE (produit_quantite <= produit_alerte OR produit_attribut_quantite <= produit_attribut_alerte)";
//$sql.=" Group by p.produit_id HAVING stock <= alerte";
 
if(!empty($_GET['nom'])) $sql.=" AND produit_ref LIKE '%".$_GET['nom']."%'";
if(!empty($_GET['frs'])) $sql.=" AND fournisseur_nom LIKE '%".$_GET['frs']."%'";

qui me renvoit à son execution, l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Unknown column 'p.produit_id' in 'on clause'

j'ai un élément de réponse ici mais je ne sais pas comment changer ma requête.

Quelqu'un pourrait m'aider ? je suis un noob en SQL


EDIT :
j'ai essaye ça mais c'est encore pire, y a plus rien qui s'affiche

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
$sql.=" FROM produit p, taxe t";
$sql.=" LEFT JOIN (produit_categorie pc, produit_attribut pa, produit_image pi, note n, produit_gamme pg, produit_assoc pas, promotion pr) "
$sql.="ON (pc.produit_id = p.produit_id AND pa.produit_id = p.produit_id AND pi.produit_id = p.produit_id AND n.produit_id = p.produit_id AND pg.produit_id = p.produit_id AND pas.produit_id = p.produit_id AND (pr.produit_id = p.produit_id OR pr.fournisseur_id = p.fournisseur_id OR pr.categorie_id = pc.categorie_id))";