使用PHP通过不同页面访问同一主机的cookie传递问题

发布于 2022-09-01 16:46:42 字数 266 浏览 14 评论 0

在本地 Apache 上有两个文件:a.php & b.php
a.php文件首先通过curl和Host联系并且创建cookie
然后将一些参数传递给 b.php,再让b.php使用a.php创建的cookie联络Host。

请问该怎么实现?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

没有心的人 2022-09-08 16:46:42

把cookie保存下来,如果你用的原生cURL的话,那就落地成文件保存。
再次访问的时候,读取保存的cookie文件就OK了。

浴红衣 2022-09-08 16:46:42

自己看下吧。看你表述的好累。

$post='__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=';
        // 初始化
        $curl = curl_init('http:///login.aspx');
        $header = array();
        $header[] = 'Host: 113.';
        $header[] = 'Connection: keep-alive';
        $header[] = 'Cache-Control: max-age=0';
        $header[] = 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8';
        $header[] = 'Origin: http://113.';
        $header[] = 'User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36';
        $header[] = 'Content-Type: application/x-www-form-urlencoded';
        $header[] = 'Referer: http:///login.aspx';
        $header[] = 'Accept-Encoding: gzip, deflate';
        $header[] = 'Accept-Language: zh-CN,zh;q=0.8';
        $header[] = 'Cookie: ASP.NET_SessionId='.$cookies;
        curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
        // 不输出header头信息
        curl_setopt($curl, CURLOPT_HEADER, 1);    
        // 保存到字符串而不是输出
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        // post数据
        curl_setopt($curl, CURLOPT_POST, 1);
        // 请求数据
        curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
        // 是否抓取跳转后的页面
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
        $response = curl_exec($curl);
        curl_close($curl);
        $rs=strlen($response);
挽心 2022-09-08 16:46:42

你为什么不直接在a.php的末尾require b.php?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文