From 0f1718f2beb26e7af9eef8f78f93d242a0639bea Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Tue, 14 Aug 2007 22:37:36 +0000 Subject: [PATCH] =?UTF-8?q?#209=20Compilation=20du=20critere=20IN=20toujou?= =?UTF-8?q?rs=20par=20FIELD,=20mais=20dans=20le=20WHERE=20et=20plus=20dans?= =?UTF-8?q?=20le=20Having=20ref=C3=A9ren=C3=A7ant=20le=20Select,=20PG=20ne?= =?UTF-8?q?=20sait=20pas=20faire.=20Il=20y=20a=20peut-etre=20une=20meilleu?= =?UTF-8?q?r=20compromis=20entre=20PG=20et=20MySQL=20mais=20au=20moins=20c?= =?UTF-8?q?elui-l=C3=A0=20fonctionne.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Avec ça la boucle documents du squelette dist/article fonctionne, et sauf erreur c'était le dernier squelette de dist/ qui ne marchait pas en PG. --- ecrire/public/criteres.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/ecrire/public/criteres.php b/ecrire/public/criteres.php index 1afb2fecee..335d790995 100644 --- a/ecrire/public/criteres.php +++ b/ecrire/public/criteres.php @@ -682,14 +682,13 @@ function critere_IN_dist ($idb, &$boucles, $crit) $op = '<>'; } else $op = '='; - $arg = "FIELD($arg,\" . _q($var) . \")"; - if ($boucles[$idb]->group) $arg = "SUM($arg)"; - $boucles[$idb]->select[]= "$arg AS cpt$cpt"; - $op = array("'$op'", "'cpt$cpt'", 0); + $arg = "'FIELD($arg,' . _q($var) . ')'"; + $boucles[$idb]->select[]= "\" . $arg . \" AS cpt$cpt"; + $op = array("'$op'", $arg, 0); // inserer la condition; exemple: {id_mot ?IN (66, 62, 64)} - $boucles[$idb]->having[]= (!$crit->cond ? $op : + $boucles[$idb]->where[]= (!$crit->cond ? $op : array("'?'", calculer_argument_precedent($idb, $col, $boucles), $op, -- GitLab