From c60e41474e786daf5a25e102f0deac6cf4280460 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Tue, 5 Sep 2006 06:42:49 +0000 Subject: [PATCH] =?UTF-8?q?Fix:=20Avec=20MySQL=205.0=20la=20proc=E9dure=20?= =?UTF-8?q?de=20requ=EAtes=20jointes=20(JOIN)=20a=20chang=E9=20pour=20suiv?= =?UTF-8?q?re=20les=20standards=20plus=20correctement.=20r=E9f=E9rence=20:?= =?UTF-8?q?=20r=E9f=E9rence:=20http://dev.mysql.com/doc/refman/5.0/fr/join?= =?UTF-8?q?.html?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/comm/prospect/prospects.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/htdocs/comm/prospect/prospects.php b/htdocs/comm/prospect/prospects.php index b93c71118fe..e559a89023b 100644 --- a/htdocs/comm/prospect/prospects.php +++ b/htdocs/comm/prospect/prospects.php @@ -78,9 +78,20 @@ if ($_GET["action"] == 'cstc') $sql = "SELECT s.idp, s.nom, s.ville, ".$db->pdate("s.datec")." as datec, ".$db->pdate("s.datea")." as datea, st.libelle as stcomm, s.prefix_comm, s.fk_stcomm "; $sql .= ", d.nom as departement"; if (!$user->rights->commercial->client->voir && !$socidp) $sql .= ", sc.fk_soc, sc.fk_user"; -$sql .= " FROM ".MAIN_DB_PREFIX."c_stcomm as st, ".MAIN_DB_PREFIX."societe as s"; -if (!$user->rights->commercial->client->voir && !$socidp) $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc"; -$sql .= " LEFT join ".MAIN_DB_PREFIX."c_departements as d on d.rowid = s.fk_departement"; +$sql .= " FROM (".MAIN_DB_PREFIX."c_stcomm as st, ".MAIN_DB_PREFIX."societe as s"; + +// Avec MySQL 5.0 la procédure de requêtes jointes (JOIN) a changé pour suivre les standards plus correctement. +// référence: http://dev.mysql.com/doc/refman/5.0/fr/join.html +if (!$user->rights->commercial->client->voir && !$socidp) +{ + $sql .= ", ".MAIN_DB_PREFIX."societe_commerciaux as sc)"; +} +else +{ + $sql .=")"; +} + +$sql .= " LEFT join ".MAIN_DB_PREFIX."c_departements as d on (d.rowid = s.fk_departement)"; $sql .= " WHERE s.fk_stcomm = st.id AND s.client=2"; if (!$user->rights->commercial->client->voir && !$socidp) $sql .= " AND s.idp = sc.fk_soc AND sc.fk_user = " .$user->id;