dllweb
@dllweb

Как можно ещё хранить кукисы в curl?

Здравствуйте уважаемые, у меня возник вопрос следующий на счёт хранения и записи кукисов в curl. А именно интересует возможность хранить полученные данные кукисов с сервера например в базе данных mysql

// CURLOPT_COOKIEJAR Место записи кукисов полученных с сервера
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt'); 
// CURLOPT_COOKIEFILE Источник чтения для отправки на сервер
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');


Вопрос по части записи как я понимаю ещё возможен в базу данных, но вот на счёт чтения не уверен, толком нигде информации не нашёл по этому вопросу и ещё даже не тестировал, но может быть кто уже встречался с этой ситуацией?

Подозреваю на возможность использования функции tempname(); как раз для эмуляции временного файла для подставки в CURLOPT_COOKIEFILE

Что скажете?
  • Вопрос задан
  • 2162 просмотра
Решения вопроса 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Для начала указываете cURL'у хранить куки в памяти, пустая строка здесь - магическое значение:
curl_setopt($curl, CURLOPT_COOKIEFILE, "");
Затем считываете куки в переменную:
$cookies = curl_getinfo($curl, CURLINFO_COOKIELIST);

После этого разбираете полученную строку и записываете куки куда хотите. Для их использования достаточно сформировать новую строку и передать её cURL'у через
curl_setopt($curl, CURLOPT_COOKIE, $newCookies);
Ответ написан
dllweb
@dllweb Автор вопроса
Извиняюсь за глупый вопрос, всё ведь можно вычитать из заголовков и далее отправить по средствам curl_setopt($curl, CURLOPT_COOKIE, $parse_header_cookies);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы