par
NoYha » 27 juil. 2018, 14:52
Bonjour à vous ! j'ai un problème à la fin de mon intégration paypal que voici :
Le souci est que j'ai pourtant bien créer l'index qui dit qu'elle n'est pas définit ! voici mon code
:
Code : Tout sélectionner
<?php
session_start();
try
{
$db = new PDO('mysql:host=localhost;dbname=site-e-commerce', 'root','');
$db ->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER); //les noms des champs seront en caractère minuscule.
$db ->setAttribute(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION);// les erreurs lanceront des exceptions.
}
catch(Exception $e){
die('Une erreur est survenue');
}
$_SESSION['user_id'] = '1';
require_once('includes/functions_panier.php');
require_once('includes/paypal.php');
$totaltva = MontantGlobalTVA();
$paypal = new Paypal();
$response = $paypal->request('GetExpressCheckoutDetails', array(
'TOKEN' => $_GET['token']
));
if($response){
if($response['CHECKOUTSTATUS'] == 'PaymentActionCompleted'){
header('Location: error.php');
}
}else{
var_dump($paypal->errors);
die();
}
$response = $paypal->request('DoExpressCheckoutPayment',array(
'TOKEN' => $_GET['token'],
'PAYERID' => $_GET['PayerID'],
'PAYMENTACTION' => 'Sale',
'PAYMENTREQUEST_0_AMT' => $totaltva,
'PAYMENTREQUEST_0_CURRENCYCODE' => 'EUR'
));
if($response){
$response2 = $paypal->request('GetTransactionDetails', array(
'TRANSACTIONID' => $response['PAYMENTREQUEST_0_TRANSACTIONID']
));
$products = '';
for($i = 0; $i<count($_SESSION['panier']['libelleProduit']); $i++){
$products.=$_SESSION['panier']['libelleProduit'][$i];
if(count($_SESSION['panier']['libelleProduit'])>1){
$products.=', ';
}
}
$name = $response2['SHIPTONAME'];
$street = $response2['SHIPTOSTREET'];
$city = $response2['SHIPTOCITY'];
$country = $response2['SHIPTOSTATE'];
$date = $response2['ORDERTIME'];
$transaction_id = $response2['TRANSACTIONID'];
$amount = $response2['AMT'];
$shipping = $response2['FEEAMT'];
$currency_code = $response2['CURRENCYCODE'];
$user_id = $_SESSION['user_id'];
$db->query("INSERT INTO transactions(name,street,city,country,date,transaction_id,amount,shipping,products,currency_code,user_id) VALUES('$name', '$street', '$city', '$country', '$date', '$transaction_id', '$amount', '$shipping', '$products', '$currency_code', '$user_id')");
header('Location: success.php');
}else{
var_dump($paypal->errors);
die();
}
?>
je n'arrive pas à résoudre le problème !
et la deuxième erreur je ne la comprend pas non car malgré le fait que j'essaye de changer les valeurs de amounbt dans la table phpmyadminn cela ne fait rien ! une idée ?
voici ma table :
Merci vous !
Bonjour à vous ! j'ai un problème à la fin de mon intégration paypal que voici :[img]https://user.oc-static.com/upload/2018/07/25/15325393130724_2.png[/img]
Le souci est que j'ai pourtant bien créer l'index qui dit qu'elle n'est pas définit ! voici mon code
: [code]<?php
session_start();
try
{
$db = new PDO('mysql:host=localhost;dbname=site-e-commerce', 'root','');
$db ->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER); //les noms des champs seront en caractère minuscule.
$db ->setAttribute(PDO::ATTR_ERRMODE , PDO::ERRMODE_EXCEPTION);// les erreurs lanceront des exceptions.
}
catch(Exception $e){
die('Une erreur est survenue');
}
$_SESSION['user_id'] = '1';
require_once('includes/functions_panier.php');
require_once('includes/paypal.php');
$totaltva = MontantGlobalTVA();
$paypal = new Paypal();
$response = $paypal->request('GetExpressCheckoutDetails', array(
'TOKEN' => $_GET['token']
));
if($response){
if($response['CHECKOUTSTATUS'] == 'PaymentActionCompleted'){
header('Location: error.php');
}
}else{
var_dump($paypal->errors);
die();
}
$response = $paypal->request('DoExpressCheckoutPayment',array(
'TOKEN' => $_GET['token'],
'PAYERID' => $_GET['PayerID'],
'PAYMENTACTION' => 'Sale',
'PAYMENTREQUEST_0_AMT' => $totaltva,
'PAYMENTREQUEST_0_CURRENCYCODE' => 'EUR'
));
if($response){
$response2 = $paypal->request('GetTransactionDetails', array(
'TRANSACTIONID' => $response['PAYMENTREQUEST_0_TRANSACTIONID']
));
$products = '';
for($i = 0; $i<count($_SESSION['panier']['libelleProduit']); $i++){
$products.=$_SESSION['panier']['libelleProduit'][$i];
if(count($_SESSION['panier']['libelleProduit'])>1){
$products.=', ';
}
}
$name = $response2['SHIPTONAME'];
$street = $response2['SHIPTOSTREET'];
$city = $response2['SHIPTOCITY'];
$country = $response2['SHIPTOSTATE'];
$date = $response2['ORDERTIME'];
$transaction_id = $response2['TRANSACTIONID'];
$amount = $response2['AMT'];
$shipping = $response2['FEEAMT'];
$currency_code = $response2['CURRENCYCODE'];
$user_id = $_SESSION['user_id'];
$db->query("INSERT INTO transactions(name,street,city,country,date,transaction_id,amount,shipping,products,currency_code,user_id) VALUES('$name', '$street', '$city', '$country', '$date', '$transaction_id', '$amount', '$shipping', '$products', '$currency_code', '$user_id')");
header('Location: success.php');
}else{
var_dump($paypal->errors);
die();
}
?>[/code]
je n'arrive pas à résoudre le problème !
et la deuxième erreur je ne la comprend pas non car malgré le fait que j'essaye de changer les valeurs de amounbt dans la table phpmyadminn cela ne fait rien ! une idée ?
voici ma table : [img]https://user.oc-static.com/upload/2018/07/25/15325392053543_1.png[/img]
Merci vous !