Insert dans plusieurs tables suivant les valeurs

Résolu
typiac Messages postés 93 Statut Membre -  
typiac Messages postés 93 Statut Membre -
Bonjour,

J'ai une question relative à l'organisation. Je suis en train de terminer un script IPN pour la facturation paypal qui marche à peu près correctement.

Voilà le principe: Un client peut consommer 3 types de prix pour le même objet que j'appelle et organise de la façon suivante:

-1 Prix X = 100€ --> valeur 100€
-2 Prix Y = 300€ --> valeur 400€
-3 Prix Z = 800€ --> valeur 1000€

Les prix X et Z sont donc en fait des tarifs discount:

X = 1 objet
Y = 3*X pour le prix mais avec une valeur de 4*X
Z = 8*X pour le prix mais avec une valeur de 10*X

Donc, je dois scripter pour que suivant le montant ou l'id_item ou le product_name, une table crédit soit incrémentée de cette façon:

Achat X = insert 100 into credit from table_credit
achat Y = insert 400 into credit from table_credit
achat Z = insert 1000 into credit from table_credit

Je pensais le faire dans le script Ipn.php mais je ne suis pas sûr que ça soit le mieux.

Quel est votre avis?

2 réponses

  1. typiac Messages postés 93 Statut Membre 1
     
    Bon, je commence à traiter ce problème par une première méthode:
    actualiser une colonne "credit" dans une table "user" suite à un paiement validé par paypal comprenant:

    mc_gross --> le prix
    first_name --> prénom
    last_name --> nom

    J'ai conscience que mon système ne fonctionne pas avec des homonymes mais c'est la logique pour le moment qui compte hein?! ^^

    Bon, voici le code:
    //////////////////////////////////////////// 
    // Ici, j'insère dans une 1ère table, toutes les données de la transaction renvoyées // par paypal 
    //////////////////////////////////////////// 
    $struery = "insert into payypal_cart_info    
    
    (txnid,itemnumber,itemname,os0,on0,os1,on1,quantity,invoice,custom)  
    
    values ('".$txn_id."','".$_POST[$itemnumber]."','".$_POST[$itemname]."','".$_POST[$on0]."','".$_POST[$os0]."','".$_POST[$on1]."','".$_POST[$os1]."','".$_POST[$quantity]."','".$invoice."','".$custom."')"; 
    
    $result = mysql_query($struery) or die("Cart - paypal_cart_info, Query failed:<br>" . mysql_error() . "<br>" . mysql_errno()); 
        
    //////////////////////////////////////////// 
    //CENTRE DU PROBLEME: j'ajoute une fonction qui actualise la colonne "credit" dans //la table "user" 
    //////////////////////////////////////////// 
    
    $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()); 
    


    Ca ne fonctionne pas. Quel est le problème?
    0
  2. typiac Messages postés 93 Statut Membre 1
     
    J'ai trouvé la solution, il manquait juste les parenthèses! Il faut faire comme ceci:

    $sto = "UPDATE user SET credit=('".$mc_gross."') WHERE nom=('".$last_name."') AND prenom=('".$first_name."') LIMIT 1";
    
    0