Problème PAYPAL en PHP
Résolu
Programming_018
Messages postés
108
Date d'inscription
Statut
Membre
Dernière intervention
-
Programming_018 Messages postés 108 Date d'inscription Statut Membre Dernière intervention -
Programming_018 Messages postés 108 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Problème PAYPAL en PHP
- Paypal - Guide
- Créer un compte paypal - Guide
- Easy php - Télécharger - Divers Web & Internet
- Paypal europe sarl et cie sca - Accueil - Guide arnaque
- Piratage paypal - Accueil - Guide piratage
4 réponses
Bonjour
Les données sont serialisees
Il suffit donc de faire un
Ensuite, result sera un array... Tu pourras donc facilement recuperer les données voulues
Les données sont serialisees
Il suffit donc de faire un
$result = unserialize($lesdatas);
Ensuite, result sera un array... Tu pourras donc facilement recuperer les données voulues
Bonjour merci infiniment mais comment savoir le nom du champs adresse postale par exemple
et faut il que je le mette dans une boucle au cas ou le client commende deux articles ou cela vas se faire automatiquement ?
Exemple : quand on achète deux articles dans ma boutique cela créer item_name1 = ordinateur ACER et item_name2 = Ecran.
Du coup je suppose que dans ma base de données pour que les deux items se récupère il faut que je les mette dans un while mais je dois avouer que je ne sais pas par ou commencer.
Cordialement.
et faut il que je le mette dans une boucle au cas ou le client commende deux articles ou cela vas se faire automatiquement ?
Exemple : quand on achète deux articles dans ma boutique cela créer item_name1 = ordinateur ACER et item_name2 = Ecran.
Du coup je suppose que dans ma base de données pour que les deux items se récupère il faut que je les mette dans un while mais je dois avouer que je ne sais pas par ou commencer.
Cordialement.
Rebonjour,
Alors après plusieurs essaie que j'ai fais je pense que j'emploie mal les arrays :(
Voila ce que j'aimerai mettre dans ma base de données :
id, user_id, prenom, nom, payer_email, article, quantiter, prix_ttc, devise, status_paiement, adresse_name, adresse_postale, ville, pays, date_paiement, moyen_paiement.
J'ai un fichier qui comprend un exemple de ce que paypal récupère :
Ma question est la suivante : comment adapter le array que tu m'as donner ?
Si je résume je dois faire un truc du genre :
est-ce que je me suis trompé à quelque part ?
Cordialement.
Alors après plusieurs essaie que j'ai fais je pense que j'emploie mal les arrays :(
Voila ce que j'aimerai mettre dans ma base de données :
id, user_id, prenom, nom, payer_email, article, quantiter, prix_ttc, devise, status_paiement, adresse_name, adresse_postale, ville, pays, date_paiement, moyen_paiement.
J'ai un fichier qui comprend un exemple de ce que paypal récupère :
Array ( [mc_gross] => 29.99 [protection_eligibility] => Ineligible [address_status] => unconfirmed [item_number1] => 45 [payer_id] => 49XBH7E2Q [tax] => 0.00 [address_street] => Adresse 5oi [payment_date] => 12:02:03 Dec 15, 2012 PST [payment_status] => Completed [charset] => windows [address_zip] => 750 [mc_shipping] => 0.00 [mc_handling] => 0.00 [first_name] => LUCAS [mc_fee] => 1.27 [address_country_code] => FR [address_name] => ADresse [notify_version] => 3.7 [custom] => user_id= [payer_status] => verified [business] => mail@mail.mail [address_country] => France [num_cart_items] => 1 [mc_handling1] => 0.00 [address_city] => VS [verify_sign] => Akwf23o1KcTWiLEk-uTGkX46vlJ [payer_email] => clients@clients.clients [mc_shipping1] => 0.00 [tax1] => 0.00 [txn_id] => 96282240217 [payment_type] => instant [last_name] => DELC [address_state] => Franca [item_name1] => Magic mouse [receiver_email] => mail@mail.mail [payment_fee] => [quantity1] => 1 [receiver_id] => ZWUP4QK6 [txn_type] => cart [mc_gross_1] => 29.99 [mc_currency] => EUR [residence_country] => FR [test_ipn] => 1 [transaction_subject] => user_id= [payment_gross] => [ipn_track_id] => ff0b2730 )
Ma question est la suivante : comment adapter le array que tu m'as donner ?
Si je résume je dois faire un truc du genre :
$prenom = $_POST['first_name']; $nom = $_POST['last_name']; $payer_email = $_POST['payer_email']; $item_name = $_POST['item_name']; $item_number = $_POST['item_number']; $payment_amount = $_POST['mc_gross']; $payment_currency = $_POST['mc_currency']; $payment_status = $_POST['payment_status']; $adresse_name = $_POST['address_name']; $adresse_street = $_POST['address_street']; $adresse_city = $_POST['address_city']; $adresse_country = $_POST['address_country']; $uid = $custom['user_id']; $result = unserialize($_POST); $arr = array("first_name"=>$prenom,"last_name"=>$nom); ainsi de suite $valeur_de_x = !empty($arr['x']) ? $arr['x'] : NULL; echo " La valeur de x est donc :" . $valeur_de_x; $db->query("INSERT INTO commande (user_id,prenom,nom,payer_email,article,quantiter,prix_ttc,devise,status_paiement,adresse_name,adresse_postale,ville,pays,date_paiement,moyen_paiement) VALUES (".$uid.",".$prenom.",".$nom.",".$payer_email.",".$item_name.",".$item_number.",".$payment_amount.",".$payment_currency.",".$payment_status.",".$adresse_name.",".$adresse_street.",".$adresse_city.",".$adresse_country.",NOW(),'".$txn_type."')");
est-ce que je me suis trompé à quelque part ?
Cordialement.
On va reprendre au début ....
D'où viennent les données que tu nous as montré au départ
Ces données, sont une string serialisée ...
Donc pour les transformer en array il faut faire un unserialize
et ensuite
D'où viennent les données que tu nous as montré au départ
a:47:{s:8:"mc_gross";s:4:"3.60";s:22:"protection_eligibility";s:8:"Eligible";s:14:"address_status";s:9:"confirmed";s:12:"item_number1";s:1:"1";s:12:"item_number2";s:1:"2";s:8:"payer_id";s:13:"FM8AQW2D6PY";s:14:"address_street";s:36:"Adresse postale";s:12:"payment_date";s:25:"17:02:14 Feb 15, 2020 PST";s:14:"payment_status";s:9:"Completed";s:7:"charset";s:12:"windows-1252";s:11:"address_zip";s:5:"34350";s:10:"first_name";s:6:"Ga?tan";s:6:"mc_fee";s:4:"0.45";s:20:"address_country_code";s:2:"FR";s:12:"address_name";s:13:"Ga?tan NOM";s:14:"notify_version";s:3:"3.9";s:6:"custom";s:9:"user_id=1";s:12:"payer_status";s:8:"verified";s:8:"business";s:23:"test@test.test";s:15:"address_country";s:6:"France";s:14:"num_cart_items";s:1:"2";s:12:"address_city";s:12:"VILLE";s:11:"verify_sign";s:56:"Alwptk5ifJFI7pjeuAf-u7ifb3KRFye2Ru";s:11:"payer_email";s:26:"mail.mail@mail.mail";s:6:"txn_id";s:17:"7Y28210T";s:12:"payment_type";s:7:"instant";s:9:"last_name";s:6:"NOM";s:13:"address_state";s:0:"";s:10:"item_name1";s:17:"ECRAN ASUS VK193D";s:14:"receiver_email";s:23:"test@test.test";s:10:"item_name2";s:17:"Acer aspire M1100";s:11:"payment_fee";s:0:"";s:17:"shipping_discount";s:4:"0.00";s:9:"quantity1";s:1:"2";s:16:"insurance_amount";s:4:"0.00";s:9:"quantity2";s:1:"1";s:11:"receiver_id";s:13:"PDL8AEN";s:8:"txn_type";s:4:"cart";s:8:"discount";s:4:"0.00";s:10:"mc_gross_1";s:4:"2.40";s:11:"mc_currency";s:3:"EUR";s:10:"mc_gross_2";s:4:"1.20";s:17:"residence_country";s:2:"FR";s:15:"shipping_method";s:7:"Default";s:19:"transaction_subject";s:0:"";s:13:"payment_gross";s:0:"";s:12:"ipn_track_id";s:13:"4beadb475a1e4";}
Ces données, sont une string serialisée ...
Donc pour les transformer en array il faut faire un unserialize
$datas = unserialize($tavariablevenantdepayapal); // transforme en array les données serialisées print_r($datas) ; // pour voir ce que contient l'array
et ensuite
$mc_gros = !empty($datas['mc_gros']) ? $datas['mc_gros'] : NULL; //récupère la valeur contenu dans l'array datas et ayant pour clé mc_gros
Les valeurs que j'ai données au tout débuts sont stocké dans une variable $datas.
En clair j'ai regarder un tuto pour me servir de paypal et j'essaie de modifier pour obtenir mon résultat souhaité.
dans le tuto que j'ai suivi on insère une ligne dans la table orders
$db->query("INSERT INTO orders (user_id,amount,created,datas,txn_id) VALUES (".$uid.",".$payment_amount.",NOW(),'".$data."','".$txn_id."')");
ceci fonctionne parfaitement mais mois au lieu de $data je souhaiterai rajouter d'autre colonne ce qui est fait mais surtout de pouvoir récupérer juste ce que je veux comme le nom de l'article quantité tarif et les infos du client.
Puis d'insérer le tout dans la bdd.
Merci vraiment de ton aide.
En clair j'ai regarder un tuto pour me servir de paypal et j'essaie de modifier pour obtenir mon résultat souhaité.
dans le tuto que j'ai suivi on insère une ligne dans la table orders
$db->query("INSERT INTO orders (user_id,amount,created,datas,txn_id) VALUES (".$uid.",".$payment_amount.",NOW(),'".$data."','".$txn_id."')");
ceci fonctionne parfaitement mais mois au lieu de $data je souhaiterai rajouter d'autre colonne ce qui est fait mais surtout de pouvoir récupérer juste ce que je veux comme le nom de l'article quantité tarif et les infos du client.
Puis d'insérer le tout dans la bdd.
Merci vraiment de ton aide.
Les valeurs que j'ai données au tout débuts sont stocké dans une variable $datas
Donc je suis tombé juste avec mon exemple
pouvoir récupérer juste ce que je veux comme le nom de l'article quantité tarif et les infos du client.
Donc, en reprenant mon exemple, tu peux récupérer chaque variable.... et les utiliser pour faire ta requête d'insertion dans ta bdd.
Donc tout devrait être bon maintenant.