updtate avec jointure modifie d'autres champs?
Posté : 26 avr. 2021, 21:11
Bonjour, je viens de constater que cette écriture d' update avec jointure ne fonctionne pas correctement....
exemple pour le membre 1
exemple pour le membre 2
J'ai testé avec
WHERE membres.pos_x = map.pos_x AND membres.pos_y = map.pos_y
WHERE membres.id
sans succès. Quelle serait la méthode correcte pour que cet update fonctionne indépendamment de chaque utilisateur?
exemple pour le membre 1
$pdostat = $bdd->prepare("UPDATE map INNER JOIN membres ON membres.pos_x = map.pos_x AND membres.pos_y = map.pos_y SET map.tile = '/relief/tile_foret.gif', map.ressource = '/objets/arbre.gif', map.qte_ressource = 500 ");
En fait, avec un second utilisateur qui utiliseraitexemple pour le membre 2
$pdostat = $bdd->prepare("UPDATE map INNER JOIN membres ON membres.pos_x = map.pos_x AND membres.pos_y = map.pos_y SET map.tile = '/relief/tile_prairie.gif', map.ressource = '/objets/herbe.gif', map.qte_ressource = 500");
Là, cela modifie en table les champs chez le précédent utilisateur. (le membre 1 qui avait des arbres dans une foret se retrouve avec de l'herbe dans une prairie.!) et ainsi de suite.J'ai testé avec
WHERE membres.pos_x = map.pos_x AND membres.pos_y = map.pos_y
WHERE membres.id
sans succès. Quelle serait la méthode correcte pour que cet update fonctionne indépendamment de chaque utilisateur?