[SPIP Zone] r19635 - in /_plugins_/_test_/spip-listes/spip-listes_1_9_3: exec/spiplistes_maintenance.php inc/spiplistes_api.php lang/spiplistes_fr.php plugin.xml

paladin@quesaco.org a écrit :

Author: paladin@quesaco.org
Date: Sat Mar 29 19:13:37 2008
New Revision: 19635

+ // supprime d'abord de la queue d'envoi
+ sql_delete("spip_auteurs_courriers", "id_courrier IN (SELECT id_courrier FROM spip_courriers WHERE statut='$statut')");

Je me permets d'intervenir une nouvelle fois...
Idéalement, il faudrait faire cette requette en 2 étapes :

$selection = sql_select("id_courrier","spip_courriers","statut=".sql_quote($statut),'','','','','',false);

sql_delete("spip_auteurs_courriers", "id_courrier IN ($selection)");

Evidemment, ça ne peut être fait qu'en 1.9.3 : $selection contenant ici la requete select (pas son résultat) (false disant de ne pas faire la requete, mais de donner sa syntaxe)...

Dans le cas contraire, tu risques d'avoir des problèmes de portage avec pg ou sqlite (enfin, ça peut passer aussi, sait-on jamais, mais autant bien faire !). Il faut au moins que tu mettes sql_quote($statut)...

MM.