Paypal + PHP: başarı satılık bir değer almak için nasıl

3 Cevap php

Ben bir biçimde sitemde bir paypal düğme var. Form kullanıcı belirli bir değer girmelisiniz ID adında ek bir girdi vardır.

Satışı tamamlandıktan sonra, Paypal domain.com / kredilik kullanıcı döner? Tamamlandı

Nasıl / kredilerinde kullanıcı tarafından girilen özgün kimlik değeri? Yapılabilir alabilir? otomatik olarak onun veritabanı kaydı değiştirmek için gerekir.

Teşekkürler.

3 Cevap

Her işlem karışmamasını sağlayan benzersiz bir fatura olacak basit sepeti sistemi oluşturabilirsiniz. Paypal ile ödeme veri gönderirken parametre olarak bu faturayı geçmek. Herhangi diğer veriler sadece, sizin veritabanında size benzersiz bir tanımlayıcı olarak fatura her işlem belirleyebilirsiniz beri, paypal gönderdi gerek saklanabilir.

Ayrıca kullanıcı ödeme yaparken paypal veri almak için ipn işleyicisi sayfa oluşturmak gerekir, böylece veritabanında ödeme durumunu güncelleyebilirsiniz. Bu şekilde, kullanıcı ödeme yaptıktan sonra sitenizin link dönmek tıklamak zorunda değilsiniz, ama yine de ilgili veri güncelleme yapabilirsiniz.

Entegrasyonu kolaylaştırmak için, Micah Carrick's Paypal IPN Class kullanarak düşünebilirsiniz. Temelde paypal tarafından sağlanan biri ile aynı kod, ama bir sınıf içine sarılmış, bu yüzden sadece sayfanızda kullanabilirsiniz.

Eğer bakın kimlik kullanmak eşsiz bir başvuru ise, item_number öğesini kullanarak bu geri ve ileri Paypal ve siteniz arasında geçmektedir.

Eğer müşteriye göstermek ve ayrıca 3 URL'leri belirtebilirsiniz dikkat HTML biçiminde kimliğini ayarlayın:

<input type="hidden" name="item_name" value="Box of stuff"></input>
<input type="hidden" name="item_number" value="12345"></input>
<input type="hidden" name="return" value="http://www.blah.com/paypal_thanks.asp"></input>
<input type="hidden" name="notify_url" value="http://www.blah.com/paypal_callback.asp"></input>
<input type="hidden" name="cancel_return" value="http://www.blah.com/paypal_cancel.asp"></input>

Yukarıda "paypal_callback.asp" kullanıldığı yerlerde, bu size Paypal oturum açtığınızda kurmak ve ayarlarınızı düzenleyebilirsiniz IPN bağlantısını geçersiz kılar. Yani bu değer isteğe bağlıdır.

(ASP yazılı varsayılarak) scrpt paypal_callback.asp sonra sadece söyleyebiliriz:

iAdvertId = Request.Form("item_number")

Bu sayfa kullanıcıya gösterilen bir değil unutmayın! Bu perde arkasında Paypals sunucuları çarpar. Can sıkıcı şey paypal_callback.asp hemen Paypal tarafından çağrılan almazsınız olmasıdır. Bu 3 gün sonra olabilir ... ya da bir ödeme geri çekmek için bir ay sonra onu vurmak olabilir.

Müşteri benim örnekte paypal_thanks.asp veya paypal_cancel.asp ya yönlendirilir alacak. Bu sayfalar, bir form veya sorgu dizesi geçti olmayacak, böylece size yer numarasını ele almak için tek yol item_number kullanıcı satın almak için formu gönderen ÖNCE ayrıca bir tanımlama içinde saklamaktır.

Eğer (Açıklama hattının ucunda) da Paypal, item_number konu satırında yer alacak, gelen ve posta bünyesinde e-posta almak.

Bu özel alanlara ek bilgileri ayarlamak da mümkündür. Paypal documentation bunu nasıl ayrıntıları ve sandbox kendi IPN simülatörü ile test edebilirsiniz.

PayPal Entegrasyon Merkezi bünyesinde PayPal'ın Instant Payment Notification için dokümantasyon ve IPN PHP code sample bakın.