我的脚本使用cURL有问题。在页面A上,我设置了cURL POST并将其发送到页面B,其中执行登录脚本。数据正确传递,但会话和cookie未在页面B上设置。
脚本login.php打开SESSION(最终COOKIE)并保存必要的信息。如果我直接从页面B登录,它工作正常。
$ch = curl_init("http://www.example.com/login.php");
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "login_name=xxx&login_pass=xxx");
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec ($ch);
curl_close ($ch);
答案 0 :(得分:0)
<?php
$ch = curl_init("http://www.example.com/login.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "login_name=xxx&login_pass=xxx");
curl_setopt($ch, CURLOPT_COOKIEJAR, '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, '/cookie.txt');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close ($ch);
?>
您还可以创建一个存储Cookie的 tmp 目录!
答案 1 :(得分:0)
尝试将此添加到您的代码中
$cookie="cookie.txt";
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl_connection, CURL_COOKIEJAR, $cookie);
curl_setopt($curl_connection, CURL_COOKIEFILE, $cookie);
curl_setopt($curl_connection, CURL_VERBOSE, true);
希望这有用..