Я пытаюсь использовать cookie, который сохраняется, вместо входа в систему каждый раз, когда сайт посещается.Reuse cookie cURL PHP
<?php
$uid = $_GET['uid'];
$ch = curl_init();
$cookie_file = dirname(__FILE__) . '/cookie.txt';
curl_setopt($ch, CURLOPT_URL, "http://www.forum.net/member.php?action=do_login");
curl_setopt($ch, CURLOPT_REFERER, "http://www.forum.net/member.php?action=login");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) Chrome/19.0.1084.56 Safari/536.5");
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_COOKIEFILE, '/cookie.txt');
curl_setopt($ch, CURLOPT_POSTFIELDS, "username=USERNAME&password=PASSWORD");
$exec = curl_exec($ch);
curl_setopt($ch, CURLOPT_URL, "http://www.forum.net/reputation.php?uid=" . $uid . "&page=1");
$exec = curl_exec($ch);
echo $exec;
?>
Это не позволит мне повторно использовать куки, по какой-то причине, но вместо этого он просто регистрирует меня. Cookie.txt файл содержит печенье материал.
Вы устанавливаете как '' CURLOPT_COOKIEJAR' и CURLOPT_COOKIEFILE' дважды, и конечный результат будет разные значения. '/ cookie.txt' сохранит файл в системном корне и' dirname (__ FILE__). '/ cookie.txt'' сохранит файл в том же каталоге, что и исполняемый скрипт. Убедитесь, что вы только устанавливаете каждый параметр один раз с одинаковым значением (возможно, последним). – DaveRandom
Хорошо, я установил CURLOPT_COOKIEJAR и CURLOPT_COOKIEFILE в: dirname (__ FILE__). '/cookie.txt' - однако это не сработает. Обновлен OP с новым кодом. – MortenMoulder
Возможный дубликат http://stackoverflow.com/questions/12885538/php-curl-and-cookies/ – ChrisF