Querystring dont la valeur d'une variable est url

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Querystring dont la valeur d'une variable est url

Re: Querystring dont la valeur d'une variable est url

par ritpas » 20 mars 2011, 19:46

non ça ne marche pas non plus.

En fait pour être plus précis j'effectue un appel à Paypal vers la methode SetExpressCheckout.
J'ai aussi essayé avec un table associatif mais ça ne change rien :

Code : Tout sélectionner

$postvar= array( USER => 'Utilisateur', PWD => 'MonMotDePasse', SIGNATURE => 'AKt4cwffKF0jdLEq-aqqY8pe8L1FAcvxAgCAqdgLM679367j1ch.9j3I', METHOD => 'SetExpressCheckout', VERSION => '59', PAYMENTACTION => 'Sale', AMT => '20', CURRENCYCODE => 'EUR', LANDINGPAGE => 'Billing', NOSHIPPING => '1', CANCELURL => 'http://www.urlderetour.fr?statut=nok', RETURNURL => 'http://www.urlderetour.fr?statut=ok'); $url = 'https://api-3t.sandbox.paypal.com/nvp'; $ch = curl_init($url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postvar)); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($ch); curl_close($ch); echo $response;

Re: Querystring dont la valeur d'une variable est url

par xTG » 20 mars 2011, 09:59

Bizarre... Normalement ils devraient pas être interprétés les & après passage dans urlencode()...
Et avec htmlentities() ?

Re: Querystring dont la valeur d'une variable est url

par Invité » 20 mars 2011, 06:07

Oui mais ça ne marche pas car il me considère le paramètre comme invalide.

J'aurai pu penser que tout simplement il n'accepte pas qu'on lui passe des url en post contenant une querystring,
Mais j'ai testé en .NET et j'arrive à appeler le même fichier distant et j'ai une réponse positive en lui envoyant les même paramètres (utilisation de l'objet WebRequest conjointement avec une collection NameVluePairCollection contenant les paramètres).

Mais en situation réelle il faut que je le fasse en php et je n'y arrive pas.

Re: Querystring dont la valeur d'une variable est url

par xTG » 20 mars 2011, 00:23

As-tu essayé avec urlencode() ?

Querystring dont la valeur d'une variable est url

par ritpas » 19 mars 2011, 23:16

Bonjour

Je fais une http request vers une page sensée me donner une réponse
Il faut que je fournisse à cette page une url contenant une querystring.
J'utilise le code suivant :
$url="pageDontJattendUneReponse.php";

$postvars.="&NOM=MonNom";
$postvars.="&URL=http://www.monurl.php?var1=valeur1&var2=valeur2";

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT,0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$response = curl_exec($ch);


Comment encoder ma variable URL de manière à ce qu'il ne prenne pas var1 et var2 comme des variables POST?

Merci pour votre réponse.