Bonjour
Je n'arrive pas à faire passer une condition d'update en php alors que la requete sql depuis phpMyadmin passe.
la traduction en php donne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 # Requete SQL update module inner join formamod on module.codeMod = formamod.ModuleID inner join formamet on formamod.FormametID = formamet.CodeFormMet set `module`.Com="1" Where (`formamet`.`Type` ="foo") AND formamod.ModuleID IN ( SELECT ModuleID FROM formamod GROUP BY ModuleID HAVING COUNT(ModuleID)>1)
Le script fonctionne jusqu'à la première condition. Le IN (SELECT n'a pas l'air de passer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 $bdd->beginTransaction(); $bdd->query('update module inner join formamod on module.codeMod = formamod.ModuleID inner join formamet on formamod.FormametID = formamet.CodeFormMet set module.Com="1" Where ((formamet.Type="foo") AND formamod.ModuleID IN (SELECT ModuleID FROM formamod GROUP BY ModuleID HAVING COUNT(ModuleID) > 1 ))' ); $bdd->commit();
Pour être plus clair je ne veux que mettre à jour ModuleID.Com que lorsque ModuleID est présent plus d'une fois dans la table formamod.
Si vous aviez une piste, je serais ravi. Merci pour votre aide.
@+
Nopt
Partager