【问题标题】:PHP Curl POST/SESSION/COOKIE IssuePHP Curl POST/SESSION/COOKIE 问题
【发布时间】:2012-01-18 19:19:01
【问题描述】:

我想创建一个可以使用 POST 信息登录的脚本,然后同时浏览几个页面。 (登录后)所以我需要保留会话/cookie的东西......

我尝试了一些方法,登录 (POST) 工作正常。

但是当我尝试执行第二个 url(第一个是登录页面)时,我丢失了会话/cookie,并且网页显示我不再登录:

我的代码哪里出错了?

$url = 'http://www.example.com/authenticate.php';
$url2 = 'http://www.example.com/twourl.php';

$player = 'myuser';
$password = 'mypass';
$fields = array(
            'player'=>urlencode($player),
            'password'=>urlencode($password),
        );

//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST,count($fields));
curl_setopt($ch, CURLOPT_POSTFIELDS,$fields_string);
curl_setopt($ch, CURLOPT_HEADER, 0);

//execute post
curl_exec($ch);

curl_setopt($ch, CURLOPT_URL,$url2);
curl_setopt($ch, CURLOPT_HEADER, 0);

//execute two url
curl_exec($ch);

//close connection
curl_close($ch);

为什么不让我在第二个 url 上登录?

【问题讨论】:

  • 我认为我们需要查看您的 authenticate.php 代码。
  • 嗯,这是一个第三方网站,所以我想我不能。
  • @Steven Tilling 我正在尝试做同样的事情,你明白了吗?如果是这样,您可以发布答案吗?谢谢

标签: php post curl


【解决方案1】:

查看http://www.php.net/manual/en/book.curl.php#97160 我看不到您试图将会话传递到站点的位置。

编辑:您也可以查看http://www.phpbuilder.com/board/showthread.php?t=10346748

【讨论】:

  • 我不知道我必须做一个会话的事情,我认为相同的连接 = 相同的会话。谢谢,我会调查的。
猜你喜欢
  • 2011-11-23
  • 1970-01-01
  • 2019-05-29
  • 2011-12-19
  • 2018-10-27
  • 1970-01-01
  • 2012-06-21
  • 2011-10-10
  • 2017-01-31
相关资源
最近更新 更多