Additioner un réultat avec une valeur existante via update

Résolu/Fermé
typiac Messages postés 92 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 14 janvier 2015 - Modifié par typiac le 17/12/2012 à 04:46
typiac Messages postés 92 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 14 janvier 2015 - 17 déc. 2012 à 04:55
Bonjour,

Suite à une question posée concernant la fonction update permettant d'actualiser la valeur d'une colonne, je dois désormais aller plus loin.

La question est la suivante:

M.X s'est inscrit sur mon site. Il apparaît dans ma bdd dans la table "user" qui comprend une colonne "credit".

M.X fait un achat via paypal qui renvoit la valeur mc_gross correspondant au montant de son achat.

J'arrive à intégrer ce montant dans la colonne "credit" de M.X comme ceci:

$sto = "UPDATE user SET credit=('".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1";  
         $result = mysql_query($sto) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno());  


Parfait. Mais le problème qui se pose, c'est comment actualiser la colonne "credit" en cas de nouvel achat?

Il faut faire une addition de la valeur renvoyée par paypal avec la valeur existante. J'ai essayer ceci mais ça ne fonctionne pas:

$sto = "UPDATE user SET credit=('credit'+'".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1";  
         $result = mysql_query($sto) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno());  


Et comme ceci, ça ne marche pas non plus:

$sto = "UPDATE user SET credit=('credit')+('".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1"; 
         $result = mysql_query($sto) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno()); 


et comme cela non plus!:
$sto = "UPDATE user SET credit=(credit)+('".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1";
         $result = mysql_query($sto) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno());



Help!



A voir également:

1 réponse

typiac Messages postés 92 Date d'inscription lundi 9 mai 2011 Statut Membre Dernière intervention 14 janvier 2015 1
17 déc. 2012 à 04:55
A force d'acharnement, on y vient! Ca marche comme ceci!:

 $sto = "UPDATE user SET credit= (credit + '".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1";
         $result = mysql_query($sto) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno());
		 
0