IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Bouton achat paypal.


Sujet :

Langage PHP

  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut Bouton achat paypal.
    Bonjours,

    J'essaye de faire un bouton "acheter" via paypal, je vais une simple boucle dans le code suivant pour que paypal affiche tous mes produits, donc sa devrai marcher.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">   
    <input name="return" type="hidden" value="http://mondomaine/paiementValide.php" />
    <input name="cancel_return" type="hidden" value="http://mondomaine/paiementAnnule.php" />
    <input name="notify_url" type="hidden" value="http://mondomaine/validationPaiement.php" />
    <input name="cmd" type="hidden" value="_xclick" />
    <input name="currency_code" type="hidden" value="EUR" />
    <input name="no_note" type="hidden" value="1" />
    <input name="lc" type="hidden" value="FR" />
    <input name="bn" type="hidden" value="PP-BuyNowBF" />
    <input name="custom" type="hidden" value="<?php echo $prenom; ?>" />
    <input type='hidden' value="<?php echo MontantGlobal(); ?>" name="amount" />
    <input name="tax" type="hidden" value="0.00" />
    <input name="shipping" type="hidden" value="0.00" />
     
            <?php
            if (creationPanier()) {
                $nbArticles=count($_SESSION['panier']['libelleProduit']);
                if ($nbArticles <= 0) echo '';
                else {
                    for ($i=0; $i<$nbArticles; $i++) { 
    				?>  
    <!-- Paypal-->
    <input name="item_name<?php echo $i++; ?>" type="hidden" value="<?php echo htmlspecialchars($_SESSION['panier']['libelleProduit'][$i]); ?>" />
    <!-- Paypal-->
             <?php } ?>
    <input alt="Acheter Maintenant" name="submit" src="https://www.paypal.com/fr_FR/FR/i/btn/btn_buynow_LG.gif" type="image" />
    <img src="https://www.paypal.com/fr_FR/i/scr/pixel.gif" border="0" alt="" width="1" height="1" />
    </form>
            <?php }
    		}
    		?>
    Donc le formulaire dans le code source donne sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    <form method="post" action="https://www.sandbox.paypal.com/cgi-bin/webscr">
    <input type="hidden" value="http://mondomaine/paiementValide.php" name="return">
    <input type="hidden" value="http://mondomaine/paiementAnnule.php" name="cancel_return">
    <input type="hidden" value="http://mondomaine/validationPaiement.php" name="notify_url">
    <input type="hidden" value="monbiz_1305056910_biz@gmail.com" name="business">
    <input type="hidden" value="_xclick" name="cmd">
    <input type="hidden" value="EUR" name="currency_code">
    <input type="hidden" value="1" name="no_note">
    <input type="hidden" value="FR" name="lc">
    <input type="hidden" value="PP-BuyNowBF" name="bn">
    <input type="hidden" value="test" name="custom">
    <input type="hidden" name="amount" value="7">
    <input type="hidden" value="0.00" name="tax">
    <input type="hidden" value="0.00" name="shipping">
    <input type="hidden" value="65" name="item_name">
    <input type="hidden" value="1" name="item_name">
    <input type="hidden" value="2" name="item_name">
    <input type="image" src="https://www.paypal.com/fr_FR/FR/i/btn/btn_buynow_LG.gif" name="submit" alt="Acheter Maintenant">
    <img height="1" border="0" width="1" alt="" src="https://www.paypal.com/fr_FR/i/scr/pixel.gif">
    </form>

    On peut donc voir que ma boucle fonctionne bien, puisque tous mes articles sont affiché
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <input type="hidden" name="amount" value="7">
    <input type="hidden" value="0.00" name="tax">
    <input type="hidden" value="0.00" name="shipping">
    <input type="hidden" value="65" name="item_name">
    <input type="hidden" value="1" name="item_name">
    <input type="hidden" value="2" name="item_name">
    Mais lorsque je clique sur "acheter", paypal ne m'affiche qu'un article.

    S'il vous plait quelqu'un pourrai me dire ou je fais fausse route ?

    Merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu ne dois pas avoir plusieurs champs avec le même nom.

    Une seconde de recherche indique qu'il faut suffixer avec un numéro par object _x
    https://www.paypal.com/cgi-bin/websc...eckout-outside
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Alors pour un panier normal.

    Donc un produit se caracterise par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Nom
    Quantitie
    Prix
    Donc dans la boucle je dois mettre sa par ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <input name="item_name_<?php echo $i; ?>" type="hidden" value="<?php echo $itemName; ?>" />
    <input name="shipping_<?php echo $i; ?>" type="hidden" value="0.00" />
    <input name="amount_<?php echo $i; ?>" type='hidden' value="<?php echo $currentCount; ?>" />
    $i s'incremente automatiquement et commence par un.

    Donc sa, sa ne marche pas.
    Il faut rajouter d'autre chose dans la boucle ?

    Pour aider voici le code HTML du resultat du formulaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <input type="hidden" value="http://mondomaine/paiementValide.php" name="return">
    <input type="hidden" value="http://mondomaine/paiementAnnule.php" name="cancel_return">
    <input type="hidden" value="http://mondomaine/validationPaiement.php" name="notify_url">
    <input type="hidden" value="monbiz_1305056910_biz@gmail.com" name="business">
    <input type="hidden" value="_xclick" name="cmd">
    <input type="hidden" value="EUR" name="currency_code">
    <input type="hidden" value="1" name="no_note">
    <input type="hidden" value="FR" name="lc">
    <input type="hidden" value="PP-BuyNowBF" name="bn">
    <input type="hidden" value="test" name="custom">
    <input type="hidden" value="0.00" name="tax">
    <input type="hidden" value="1" name="item_name_1">
    <input type="hidden" value="0.00" name="shipping_1">
    <input type="hidden" value="1" name="amount_1">
    <input type="hidden" value="65" name="item_name_2">
    <input type="hidden" value="0.00" name="shipping_2">
    <input type="hidden" value="2" name="amount_2">
    <input type="hidden" value="2" name="item_name_3">
    <input type="hidden" value="0.00" name="shipping_3">
    <input type="hidden" value="1" name="amount_3">
    <input type="image" src="https://www.paypal.com/fr_FR/FR/i/btn/btn_buynow_LG.gif" name="submit" alt="Acheter Maintenant">

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    $i s'incremente automatiquement et commence par un.
    Donc sa, sa ne marche pas.
    Je ne vois pas le lien entre les deux phrases.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Deux chose diferente desolé c'est mal dit.

    En faite j'incremente $i pour bien faire item_name_1 ....


    Le marche pas c'estest pour dire que, du coup sa ne m'affiche plus aucun article.

    Mais franchement je vois pas d'ou provient l'erreur

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu n'as pas lu le lien que je t'ai fourni, point n°1
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Et bien si, j'ai fais comme cité.

    Regarde le resultat de mon formulaire, j'ai bien rajouté le _x...

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    point n°1
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Donc le point 1 dit qu'on peut peut pas afficher les diferent produits d'un panier.

    Donc ma question, comment afficher les diferents produits.

    Parce que il est bien evident que els cliens si il ne peuvent pas verifier leur achat ne vont pas acheter !

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    ça c'est la méthode 1.
    Toi tu es sur la méthode 2, celle qui parle d'envoyer plusieurs objets, celle avec notre histoire de _x, celle dont le premier point indique de changer la valeur du champs "cmd".

    Pourquoi c'est moi qui doit me lire la documentation de paypal ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Oh oh sa marche.

    Merci


    Par contre comment on fait maintenant pour passer en test réel, parce que actuellement c'est en mode sanbox de paypal pour simuler.

    J'ai essayer de replacer sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
    Par sa :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    Mais j'obtiens cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Bad Request
     
    Your browser sent a request that this server could not understand.
    Size of a request header field exceeds server limit.

Discussions similaires

  1. [PayPal] Sécurisation bouton achat PayPal
    Par lllhuhdklll dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 20/11/2012, 16h54
  2. [MySQL] Script récupération données bouton acheter Paypal
    Par cuisto44000 dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 18/03/2012, 07h57
  3. Bouton "achat" Paypal et multiple options
    Par dev_null dans le forum E-Commerce
    Réponses: 1
    Dernier message: 30/11/2009, 13h29
  4. Cryptage bouton panier paypal
    Par Naail dans le forum E-Commerce
    Réponses: 0
    Dernier message: 08/09/2009, 01h28
  5. Bouton acheter paypal
    Par argentbiz dans le forum E-Commerce
    Réponses: 3
    Dernier message: 06/09/2008, 17h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo