Problème avec l'API de PAYPAL

Spyller

Spyller Le 25 juin 2016 à 01:36 (Édité le 25 janvier 2019 à 17:51)

Bonsoir 
Quand je paie sur mon site (site pour m’entraîner) pour ajouter des points, le paiement se passe normalement avec paypal, il me dit que tout est OK, mais les points ne sont pas ajoutés 
Le problème vient de l'IPN (la reception des données envoyées par Paypal)  copié si dessous, merci d'avance si vous pouvez m'aider: 

<?php 
$email_account = "seller161@account.fr"; 
$req = 'cmd=_notify-validate'; 
foreach ($_POST as $key => $value) { 
$value = urlencode(stripslashes($value)); 
$req .= "&$key=$value"; 
} 
$header = "POST /cgi-bin/webscr HTTP/1.0\r\n"; 
$header .= "Content-Type: application/x-www-form-urlencoded\r\n"; 
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n"; 
$fp = fsockopen ('ssl://www.sandbox.paypal.com', 443, $errno, $errstr, 30); 
$item_name = $_POST['item_name']; 
$item_number = $_POST['item_number']; 
$payment_status = $_POST['payment_status']; 
$payment_amount = $_POST['mc_gross']; 
$payment_currency = $_POST['mc_currency']; 
$txn_id = $_POST['txn_id']; 
$receiver_email = $_POST['receiver_email']; 
$payer_email = $_POST['payer_email']; 
parse_str($_POST['custom'],$custom); 
if (!$fp) { 
} else { 
fputs ($fp, $header . $req); 
while (!feof($fp)) { 
$res = fgets ($fp, 1024); 
if (strcmp ($res, "VERIFIED") == 0) { 
// vérifier que payment_status a la valeur Completed 
if ( $payment_status == "Completed") { 
if ( $email_account == $receiver_email && $payment_currency=='EUR') { 
$id = $custom['user_id']; 
$bdd = new PDO('mysql:host=db613394505.db.1and1.com;dbname=db613394505', 'dbo613394505', 'mon mot de passe'); 
$req = $bdd->prepare('SELECT * FROM luck WHERE id = :id'); 
$req->execute(array('id'=>$id)); 
$resultat = $req->fetch(); 
$points = $resultat['points']; 
if ($payment_amount == 0.01) 
{ 
$points= $points + 50; 
} 
$req = $bdd->prepare('UPDATE luck SET points = :balance WHERE id = :id'); 
$req->execute(array( 
'balance' => $points, 
'id' => $id 
)); 


} 
} 
else { 
// Statut de paiement: Echec 
} 
exit(); 
} 
else if (strcmp ($res, "INVALID") == 0) { 
// Transaction invalide 
} 
} 
fclose ($fp); 
} 


?> 
Blast0Kd

Blast0Kd Le 19 février 2017 à 13:51

up svp
Profil introuvable

Profil introuvable Le 23 février 2017 à 21:37

Hello,

'Spyller' et 'Blast0Kd' par ici 😉
Spyller

Spyller Le 24 février 2017 à 03:56

Pourquoi ?
Quel est le problème ?
Profil introuvable

Profil introuvable Le 25 février 2017 à 04:12 (Édité le 25 février 2017 à 04:13)

Re:

'Spyller', quand tu avais poster ton code, tu n'avais pas utiliser la balise [CODE] (maintenant c'est fait, merci encore), c'est pour cela que je t'ai envoyé le lien des règles du forum que nous avons soigneusement rédiger à cause du manque de temps de Boris (PrimFX) et pour cela l'aider à faire vivre le forum.

'Blast0Kd' est aussi concerné, puisqu'il utilise des "up" qui sont interdits ! Cela est inutile puisque sur un forum, il faut être patient du temps de réponse des membres.
Profil introuvable

Profil introuvable Le 25 février 2017 à 04:14 (Édité le 25 février 2017 à 04:15)

Re:

Je ne prend pas en charge les personnes en PHP pour le moment, attend donc une réponse d'un membre sans "up" 😀 Tu peux poster des recherches de ton côté par exemple pour faire remonter ton topic au haut de liste.
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte