2010-11-03 5 views
5

Lorsque mes utilisateurs sont connectés avec leur nom d'utilisateur et l'ID utilisateur enregistré dans la variable de session, ils peuvent faire un don en utilisant paypal. Avec le bouton acheter maintenant simple que vous pouvez simplement générer à paypal.Comment puis-je transmettre des variables de session à paypal avec le bouton Acheter maintenant

<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> 
<input type="hidden" name="cmd" value="_s-xclick"> 
<input type="hidden" name="hosted_button_id" value="XXX"> 
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"> 
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"> 
</form> 

Quand ils le paiement est réussie, ils sont envoyés à mon confirm_payment.php avec toutes les données de _POST. Je peux utiliser le mail avec lequel ils ont payé et comparer cela avec ma base de données utilisateur pour trouver le bon utilisateur, mais je ne peux pas être sûr qu'ils utilisent le même email pour paypal et mon site.

Je dois passer le $ _SESSION ['nom d'utilisateur'] à paypal afin que je puisse utiliser cette information pour donner automatiquement le statut de donateur à mes utilisateurs. Est-ce que je peux ajouter quelque chose comme:

<input type="hidden" name="custom" value="custom variable"> 

à mon code de bouton? Voici plus d'informations sur les variables avaliable paypal info

+0

Si je peux demander, comment avez-vous pu prendre les informations de la session de paypal sur votre page de confirmation de paiement? j'ai essayé $ _SESSION ['student_id']; sur le dessus de la page mais cela ne fonctionne pas .. devrais-je l'attraper comme $ student_id = $ _POST ['custom']; avec les autres articles renvoyés? – ABI

Répondre

0

oui vous pouvez ajouter comme ça, c'est la bonne façon, et quand vous paypal pings retour sur IPNHandler vous obtiendrez la valeur de ce champ caché dans custom querystring avec le même nom.

+0

juste essayé ceci sur le bac à sable et cela ne fonctionne pas :( – Dan

+0

... et, de manière confuse, la réponse acceptée est la mauvaise réponse –

+0

Cette réponse est en partie correcte, 'custom' champ caché ne fonctionne que sur les boutons Ajouter au panier , ne fonctionne pas sur le bouton Acheter maintenant – MarkoCen

3

Je trouve la documentation confusion, mais après beaucoup de navigation sur le Web, j'ai découvert que les variables personnalisées ne vous permettent pas de créer vos propres champs cachés, mais il y a 3 variables qui peuvent être utiles:

« sur mesure » en option Variable pass-through pour vos propres objectifs de suivi, que les acheteurs ne voient pas. Par défaut - Aucune variable ne vous est renvoyée. 256 caractères

"item_number" Voir la description. Variable de transmission permettant de suivre le produit ou le service acheté ou la contribution apportée. La valeur que vous spécifiez vous est renvoyée à la fin du paiement. Cette variable est requise si vous souhaitez que PayPal effectue le suivi des stocks ou effectue le suivi des pertes et des profits de l'article vendu par le bouton.

"Facture" Variable de transmission optionnelle que vous pouvez utiliser pour identifier votre numéro de facture pour cet achat. Par défaut - Aucune variable ne vous est renvoyée. 127 caractères. Donc, si vous sauvegardez vos données avant que le bouton Acheter maintenant ne se déclenche (je fais cela en ayant un écran récapitulatif qui montre les choix effectués et les enregistre dans une base de données), vous pouvez ensuite mettre une valeur (par exemple clé primaire des données sauvegardées) en tant que valeur personnalisée.

Notez que les données seront publiées sur la page de notification de paiement instantanée que vous désignez.

De

https://www.x.com/developers/paypal/documentation-tools/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables#id08A6HF00TZS

Questions connexes