我目前有一个标准的贝宝形式,它发布到贝宝并收取金额。然而,用户可以容易地修改这些细节。所以,我想知道我是否可以做到以下几点:
而不是我的'结束&付费按钮直接转到paypal,按钮的表格指向我的网站。
我的网站PHP代码然后设置POST变量,(地址,名称,金额,业务,return_url等),然后将页面重定向到paypal网站。
如何通过PHP实现这一目标?到目前为止,我所知道的唯一代码是使用header()
函数重定向页面,但我不知道如何设置POST变量。
答案 0 :(得分:0)
编辑 - 这不起作用
试试这个:
// Set Data
$data = array();
$data['address'] = $_POST['address'];
$data['name'] = $_POST['name'];
// the other info ....
// Send post data as url-encoded in the header
$req = http_build_query($data);
header("method: POST\r\n");
header("Host: localhost\r\n");
header("Content-Type: application/x-www-form-urlencoded\r\n");
header("Content-Length: ".strlen($req)."\r\n");
header($req."\r\n\r\n");
header("Connection: close\r\n\r\n");
header("Location: http://paypal.com/path/\r\n");
初次发布
你可以使用curl:
$ch = curl_init('http://paypal.com/path/');
// Set Data
$data = array();
$data['address'] = $_POST['address'];
$data['name'] = $_POST['name'];
// the other info ....
// Set options
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Execute
$page = curl_exec($ch);