PHP cURL для входа в facebook

Я пытаюсь войти в Facebook, используя curl, но все, что я пробовал, оказалось в Facebook: "Cookies не включены в вашем браузере. Пожалуйста, включите Cookies в настройках вашего браузера, чтобы продолжить".

$login_email = 'email';
$login_pass = 'password';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.facebook.com/login.php');
curl_setopt($ch, CURLOPT_POSTFIELDS,'email='.urlencode($login_email).'&pass='.urlencode($login_pass).'&login=Login');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookies.txt");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3");
curl_setopt($ch, CURLOPT_REFERER, "http://www.facebook.com");
$page = curl_exec($ch) or die(curl_error($ch));
echo $page;

Файл cookie 'cookie.txt' существует и имеет 644 разрешения. Я также попытался использовать несколько фрагментов в Интернете, но все они дают ту же ошибку. Я не могу продолжить свой текущий проект, пока я не получу эту работу, и я также смогу перейти на Facebook, используя завиток. Любая помощь приветствуется.

Спасибо заранее.

Ответ 2

У меня была та же проблема, и я исправил ее, добавив следующее:

curl_setopt ($ s, CURLOPT_COOKIESESSION, false);

Ответ 3

Это должно быть использовано в curl cookie:

curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd () . '/mirazmac_cookie.txt' );

curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd () . '/mirazmac_cookie.txt' );

Ответ 4

Лучше использовать facebook login sdk

Поскольку Facebook постоянно вносит изменения в свой исходный код.