我的问题是:我有一个在线服务,托管着我的客户目录。
这项服务需要身份验证,但是我只有一个用户名/密码。
我的客户希望单独管理每个用户的用户名/密码和访问统计信息。所以我建立了自己的账户管理系统,目前为止很好。
现在我需要添加一个登录表单,让用户填写他们自己的凭据;一旦提交,脚本应该进行身份验证,并且如果一切正常,增加访问计数,通过POST发送远程系统的登录数据并将浏览器重定向到响应页面,与普通表单完全相同。
我尝试使用
这项服务需要身份验证,但是我只有一个用户名/密码。
我的客户希望单独管理每个用户的用户名/密码和访问统计信息。所以我建立了自己的账户管理系统,目前为止很好。
现在我需要添加一个登录表单,让用户填写他们自己的凭据;一旦提交,脚本应该进行身份验证,并且如果一切正常,增加访问计数,通过POST发送远程系统的登录数据并将浏览器重定向到响应页面,与普通表单完全相同。
我尝试使用
curl
方式:if (authenticate($_POST['usr'],$_POST['pwd'])) {
$url = "http://www.foo.com/login.php";
$postdata = http_build_query(array('username'=>"foo",'password'=>"bar"));
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_exec($curl);
curl_close($curl);
}
但我最终加载了目标页面的数据到我的页面,而不是被重定向到该网站。
我应该怎么做呢?
附注:如果可能的话,我会避免使用通过JS提交的隐藏表单。
谢谢!