redirection php avec passage de parametre en post

redirection php avec passage de parametre en post - PHP - Programmation

Marsh Posté le 26-05-2009 à 14:59:30    

Bonjour,
 
Depuis quelques jours je cherche une solution pour faire une redirection vers une page en passant des paramètres en POST sans utiliser de formulaire.
 
En fait c'est pour la réalisation d'une page de paiement qui envoie des données (prix, article, etc.) à Paypal pour effectuer la transaction. La doc de Paypal fournit un formulaire à mettre en place. Je trouve cette méthode pas très sécurisée avec les champs hidden. D'où ma recherche.
 
J'ai essayé avec curl, fsockopen le soucis c'est que le script s'exécute en arrière plan sans que je sois redirigé sur la page en question. Je souhaite être redirigé sur la page à laquelle je transmets mes données en POST.
Peux-être n'ai-je pas trouvé les bonnes options avec ces deux méthodes, j'avoue là je coince un peu. :??:  
 
Si l'un de vous a une idée je suis preneur.
 
 
D'avance merci,

Reply

Marsh Posté le 26-05-2009 à 14:59:30   

Reply

Marsh Posté le 26-05-2009 à 15:08:01    

Un post ou un formulaire c'est juste un peu pareil. :??:
 
Si tu veux sécuriser tu fait de l'HTTPS c'est tout...


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Marsh Posté le 26-05-2009 à 15:15:44    

MEI a écrit :

Un post ou un formulaire c'est juste un peu pareil. :??:
 
Si tu veux sécuriser tu fait de l'HTTPS c'est tout...


 
Ce n'est pas le POST qui me pose problème mais le formulaire HTML. J'ai vu qu'avec CURL et fsockopen il était possible d'envoyer des données en post à une page. Je veux juste faire la même chose mais avec une redirection, un peu comme un header avec des paramètres passés en GET (header('Location:http://tata.com?param=1')) mais avec POST.
 
 
 
 

Reply

Marsh Posté le 26-05-2009 à 15:25:22    

Tu dois pouvoir faire ce que tu veux avec l'option curl CURLOPT_POSTFIELDS


---------------
« L'esprit ressemble à de l'eau : quand il est agité, il devient difficile à percevoir. Mais si on le laisse s'apaiser, alors la réponse devient claire. » Albert Einstein
Reply

Marsh Posté le 26-05-2009 à 15:34:38    

_v1ru5_ a écrit :

Tu dois pouvoir faire ce que tu veux avec l'option curl CURLOPT_POSTFIELDS


 
J'ai déjà essayé mais ça ne fait pas complètement ce que je veux, il manque encore la redirection  :cry:


Message édité par adrien971 le 26-05-2009 à 15:35:01
Reply

Marsh Posté le 26-05-2009 à 16:28:55    

On connais pas le contexte général mais :
* jamais CURL ne te fera une redirection, il ne fait qu'un GET/POST HTTP.
* pour que ça fonctionne il faut que le navigateur CLIENT fasse le POST.
 
Si y'a pas d'autres API Paypal t'as pas d'autres choix.
 
Après comme dit le formulaire HTML c'est pas "unsecure". (Paypal c'est pas des noobs einh).
 
Même si on lit ton code, super on va lire ton API Key Paypal et alors ? Tu crois que les gens vons s'en servir pour que leur transaction soit crédité sur ton compte ? :o


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Marsh Posté le 26-05-2009 à 17:01:25    

MEI a écrit :

On connais pas le contexte général mais :
* jamais CURL ne te fera une redirection, il ne fait qu'un GET/POST HTTP.
* pour que ça fonctionne il faut que le navigateur CLIENT fasse le POST.
 
Si y'a pas d'autres API Paypal t'as pas d'autres choix.
 
Après comme dit le formulaire HTML c'est pas "unsecure". (Paypal c'est pas des noobs einh).
 
Même si on lit ton code, super on va lire ton API Key Paypal et alors ? Tu crois que les gens vons s'en servir pour que leur transaction soit crédité sur ton compte ? :o


 

MEI a écrit :


(Paypal c'est pas des noobs einh).


C'est sûr que se sont pas des Noobs chez Paypal, mais le formulaire vient de ton site dès que l'argent rentre Paypal s'en fout après si le montant a été modifié ou l'adresse de réception ce n'est pas leur problème c'est à toi de sécuriser ton appli. :non:  
 

MEI a écrit :


Même si on lit ton code, super on va lire ton API Key Paypal et alors ? Tu crois que les gens vons s'en servir pour que leur transaction soit crédité sur ton compte ? :o


Le problème ne vient pas de la lecture des données mais de leur modification.  :o  
 
 
Sur Mozilla Firefox avec Firebug il est possible de modifier la valeur des champs hidden comme on veux, du coup je ne trouvais pas ça trop "secure" d'avoir ça dans une page :  
 

Code :
  1. <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
  2. <input type="hidden" name="cmd" value="_xclick"/>
  3. <input type="hidden" name="business" value="moi@monsite.com"/>
  4. <input type="hidden" name="item_name" value="nom de l’objet"/>
  5. <input type="hidden" name="item_number" value="identifiant interne"/>
  6. <input type="hidden" name="amount" value="10.00"/>
  7. <input type="hidden" name="currency_code" value="EUR"/>
  8. <input type="hidden" name="no_note" value="1"/>
  9. <input type="hidden" name="no_shipping" value="0"/>
  10. <input type="hidden" name="lc" value="FR"/>
  11. <input type="hidden" name="bn" value="frskog"/>
  12. <input type="image" src=" https://www.paypal.com/fr_FR/i/bnr/ [...] .gif&#034; border="0" name="submit" alt="Paiement sécurisé par carte bancaire"/>
  13. </form>


 
Après vous me direz qu'on peut toujours renseigner les valeurs en Ajax ou autre mais bon si quelqu'un a une idée pour éviter de passer par de l'Ajax et plutôt par PHP je suis preneur.


Message édité par adrien971 le 26-05-2009 à 17:23:24
Reply

Marsh Posté le 26-05-2009 à 23:19:21    

Bin non ...
parce que le problème, de base, c'est que les données viennent d'un client ... donc modifiables à souhait.
Sinon il faut que ton utilisateur (sur son poste client) les envoie en étant connecté "en live" sur le serveur, p-ê que certaines applets Java le permettent, mais Java étant initialement une machine virtuelle côté client, j'en doute fort. En tous cas, que tu le fasses en formulaire POST/hidden ou bien un autre méthode type Ajax (qui se voit tout aussi bien avec firebug soit dit en passant) n'est absolument pas, dans l'absolu, la solution que tu recherches ...


---------------
NewsletTux - outil de mailing list en PHP MySQL
Reply

Marsh Posté le 27-05-2009 à 08:11:53    

NewsletTux a écrit :

En tous cas, que tu le fasses en formulaire POST/hidden ou bien un autre méthode type Ajax (qui se voit tout aussi bien avec firebug soit dit en passant) n'est absolument pas, dans l'absolu, la solution que tu recherches ...


 
Oui et c'est pour cela que je demande si d'autres personnes ont trouvé une solution passant par php.    

Reply

Marsh Posté le 27-05-2009 à 10:12:12    

C'est conceptuellement impossible avec l'API que founis Paypal, c'est pas plus dur que ça.
 
Un post HTTP c'est FORCEMENT le client final qui doit le faire. Ca ne pourra jamais etre ton serveur PHP qui se subsitura a ça.
(et dans toutes les methodes on pourra intercepté l'URL/le POST et le modifier).
 


---------------
| AMD Ryzen 7 7700X 8C/16T @ 4.5-5.4GHz - 64GB DDR5-6000 30-40-40 1T - AMD Radeon RX 7900 XTX 24GB @ 2680MHz/20Gbps |
Reply

Marsh Posté le 27-05-2009 à 10:12:12   

Reply

Marsh Posté le 27-05-2009 à 11:54:59    

MEI a écrit :

C'est conceptuellement impossible avec l'API que founis Paypal, c'est pas plus dur que ça.
 
Un post HTTP c'est FORCEMENT le client final qui doit le faire. Ca ne pourra jamais etre ton serveur PHP qui se subsitura a ça.
(et dans toutes les methodes on pourra intercepté l'URL/le POST et le modifier).
 


 
Plutôt que d'essayer de faire avancer les choses tu les compliques en t'obstinant avec l'API Paypal. Sur de nombreux forums plusieurs personnes ont le même problème et toujours aucune solution donc si jamais quelqu'un trouve une solution se serait peut-être bien pour tout le monde de la connaitre !!! NON !!???!! :o  
On s'en f*** de l'API Paypal pour le moment, j'ai bien vu qu'elle ne proposait que des solutions pas géniales que les sites pro n'utilisent pas !! C'est pas du côté de Paypal que je cherche la solution mais au niveau du site qui envoie les données au site de Paypal.

Reply

Marsh Posté le 27-05-2009 à 14:08:31    

Citation :

des solutions pas géniales que les sites pro n'utilisent pas


Ben si un peu quand même! Si tu prends Magento (boutique de e-commerce en GPL) le module Paypal est dispo en standard. C'est simplement que les français sont pas très paypal et d'une manière générale on encore peur de faire des achats sur le web, c'est tout...
 
Côté lib php, tu peux regarder Snoopy : http://www.jonasjohn.de/snippets/p [...] xample.htm


Message édité par rufo le 27-05-2009 à 14:09:45

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed