PDA

View Full Version : خرید به کمک paypal



Tarragon
یک شنبه 30 آذر 1393, 17:52 عصر
سلام
من می خوام در یک فروشگاه اینترنتی از paypal استفاده کنم.
هرچی گشتم نتونستم نمونه کدهاشو پیدا کنم .
ممنون می شم نمونه کدی که باهاش بشه یک خرید کامل از paypal کرد رو اینجا قرار بدید.
سپاس.

Unique
یک شنبه 30 آذر 1393, 19:55 عصر
این مطلب را از خود سایت Paypal (https://developer.paypal.com/docs/classic/training/)
این هم یک نمونه اجرایی با PHP (http://jdmweb.com/how-to-easily-integrate-a-paypal-checkout-with-php)

Tarragon
یک شنبه 30 آذر 1393, 20:03 عصر
سلام
من به یک کد نیاز دارم که با wsdl بفرسته و همین طور بتونه چک کنه.
کدی که امنیتش خوب باشه.

Unique
سه شنبه 02 دی 1393, 00:29 صبح
من به یک کد نیاز دارم که با wsdl بفرسته و همین طور بتونه چک کنه.
کدی که امنیتش خوب باشه.

کلا بحث امنیت ربطی به سایت شما نداره ! یعنی چیزی بین شما و Paypal رد و بدل نمیشه که که نیاز به امنیت داشته باشه خیلی براتون مهمه یک ssl بگیرید که خیالتون راحت باشه (رگرچه واقعا بی اهمیته) روش هایی که معرفی شد خیلی خوب و کارآمد هستند. اما خیلی WSDL دوست داری و سر و کله زدن با SOAP این ها اسناد (https://developer.paypal.com/docs/classic/api/PayPalSOAPAPIArchitecture/) خود PayPal هستند.

Tarragon
سه شنبه 02 دی 1393, 05:45 صبح
جناب unique, این داره با POST می فرسته ( لینک دوم) و برای بازگشت هم همین جوریه و این یعنی یک خبره می تونه با header فیک جوری تلقی کنه که خرید انجام شده!

Unique
سه شنبه 02 دی 1393, 17:06 عصر
این یعنی یک خبره می تونه با header فیک جوری تلقی کنه که خرید انجام شده
شرمنده مثال را تا آخر نخوندم ! شما باید حتما Document های Paypal را بخونید و قطعا برای وی سرویسش بعد از دریافت مقادیر POST باید با سایت خود PAYPAL چک بشه مثل سایت های پرداخت آنلاین خودمون (ملت و پارسیان و ...).

اما شما بیا از این آموزش (http://code.tutsplus.com/tutorials/using-paypals-instant-payment-notification-with-php--net-3271) استفاده کن که داره از Paypal IPN استفاده میکنه و کامل هم توضیح داده. توی این حالت شما پس از دریافت وضعیت پرداخت با POSt دوباره باید از سایت Paypal وضعیت را چک کنید که در صورت صحت بهتون VERIFIED میده. اینجا را میگم :


// read the post from PayPal system and add 'cmd'
$req = 'cmd=_notify-validate';
foreach ($_POST as $key => $value) {
$value = urlencode(stripslashes($value));
$req .= "&$key=$value";
}
// post back to PayPal system to validate
$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.paypal.com', 443, $errno, $errstr, 30);


if (!$fp) {
// HTTP ERROR
} else {
fputs ($fp, $header . $req);
while (!feof($fp)) {
$res = fgets ($fp, 1024);
if (strcmp ($res, "VERIFIED") == 0) {

// PAYMENT VALIDATED & VERIFIED!

}

else if (strcmp ($res, "INVALID") == 0) {

// PAYMENT INVALID & INVESTIGATE MANUALY!

}
}
fclose ($fp);
}