Salve a tutti, come è noto per inviare un pagamento a paypal o (sandbox) abbiamo bisogno di un form che indichi (in hidden) alcuni parametri tra cui il notify_url, cmd, l'email con business ecc.
Questi dati a mio avviso sensibili, sono facilmente visibili, guardando il codice htlm della pagina form.
Vorrei che essi non siano visibili, per far ciò vorrei creare una form senza questi dati, e unaltra pagina (pagina transitoria) che prenda i valori dalla prima form, aggiunga quelli sensibili e invii il tutto a paypal o sandbox.
pertanto la form normale avrebbe come action="paginatransitoria.php" e in questa pagina avrei messo questo codice, che però non funziona:
foreach ($_POST as $key => $value)
{
$req = ‘notify_url=’.$mio_link&cmd=_s-xclick&on0=Testo&business=’.$mia_email’&hosted_but ton_id=’.$_numero;
foreach ($_POST as $key => $value)
{
$value = urlencode(stripslashes($value));
$req .= “&$key=$value”;
}
}
$url=”https://www.sandbox.paypal.com/cgi-bin/webscr”;
//uso curl
$ch = curl_init(); // Starts the curl handler
curl_setopt($ch, CURLOPT_URL,$url); // Sets the paypal address for curl
curl_setopt($ch, CURLOPT_PORT , 443);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // Returns result to a variable instead of echoing
curl_setopt($ch, CURLOPT_TIMEOUT, 3); // Sets a time limit for curl in seconds (do not set too low)
curl_setopt($ch, CURLOPT_POST, 1); // Set curl to send data using post
curl_setopt($ch, CURLOPT_POSTFIELDS, $req); // Add the request parameters to the post
$result = curl_exec($ch); // run the curl process (and return the result to $result
curl_close($ch);
echo $result;
Penso che il codice sopra invii corettamente i dati ($_POST) a sandbox (nell'esempio) ma che non acceda a sandbox (inteso come pagina web) come invece fa una form.
Credo che a differenza usando la form dica: vai alla pagina action e passagli questi dati.
mentre con il codice sopra dico passa i dati e dimmi che mi risponde.
Come fare allora.
Parola agli esperti please.

Rispondi quotando