merhaba şimdi ode.php dosyama ürün adeti ve taksit sayısını post ediyorum çok güzel ama 3d şifre girme sonrası sayfaya geri dönüyor ve 3d doğrulama fonksiyonunu çalıştırıyor. bu fonksiyonda fiyatın olması gerekiyor ama urun miktarı post edilmediği için fiyat 0 oluyor doğrulama yapılamıyor. ben de 3d öncesi fiyatı bir sessiona aktarıp sonra doğrulama için kullanmak istedim ama fonksiyon içinde session çalışmıyor sanırım ne yapabilirim?
public function confirmThreeDPayment()
{
print("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">");
print("<html>");
print("<body><div style=\"width:350px;margin:0 auto;\">");
date_default_timezone_set('Europe/Istanbul');
$obj = new iParaPayment();
$response = array();
$obj->private_key = $this->private_key;
$obj->public_key = $this->public_key;
try {
// iPara nin gonderdigi 3D Secure sonuc bilgileri request bilgisinden alinir
$response = $obj->getThreeDResponse($_POST);
if ($response['result'] != 1) {
print "<span style=\"font-weight:bold\">ÖDEME İŞLEMİNİZ BAŞARISIZ</span>";
return;
}
} catch (Exception $e) {
print "<span style=\"font-weight:bold\">ÖDEME İŞLEMİNİZ BAŞARISIZ</span>";
print '</br>' . $e->getMessage();
return;
}
// Odeme bilgilerinin hazirlanmasi
// odenecek toplam tutarin hesaplanmasi
$amount = $_SESSION['miktar'];
$obj->mode = "P";
$obj->three_d_secure_code = $response['three_d_secure_code'];
$obj->order_id = $response['order_id'];
$obj->amount = $amount;
$obj->echo = "echo message";
// $obj->vendor_id = $this->vendor_id;
$obj->products = $this->products;
$obj->shipping_address = $this->shipping_address;
$obj->invoice_address = $this->invoice_address;
$obj->purchaser = $this->purchaser;
$response = array();
try {
// 3D Secure sonuc bilgileri API ile odeme servisine iletilir.
$response = $obj->pay();
} catch (Exception $e) {
print "<span style=\"font-weight:bold\">ÖDEME İŞLEMİNİZ BAŞARISIZ</span>";
print '</br>' . $e->getMessage();
return;
}
}
}