C'est parce que tu mets une variable dans une chaîne de caractères encapsulée par des guillemets simples. Du coup, la variable n'est pas interprétée par PHP mais considérée comme une chaîne de caractères elle même. En gros, c'est comme si tu étais dans PHPMyAdmin et que tu essayais d'exécuter la requête suivante :
Tu as donc 2 possibilités :
'oilà !
Sinon, je te déconseille cette habitude d'utiliser le symbole @. Masquer les erreurs, c'est pas une solution pour développer une application fiable.
@tchaOo°
UPDATE Ressource SET quantité = $iRessourceTotale WHERE nom = 'Bois'
On est d'accord, ce n'est pas valide comme requête SQL.Tu as donc 2 possibilités :
- Soit tu encapsules ta requête dans des guillemets doubles :
@mysql_select_db->exec("UPDATE Ressource SET quantité = $iRessourceTotale WHERE nom = 'Bois'");
- Soit tu dois concaténer ta variable avec la requête :
@mysql_select_db->exec('UPDATE Ressource SET quantité = '. $iRessourceTotale .' WHERE nom = \'Bois\'');
'oilà !
Sinon, je te déconseille cette habitude d'utiliser le symbole @. Masquer les erreurs, c'est pas une solution pour développer une application fiable.
@tchaOo°