Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите с cURL

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Не получается залогиниться на mail.ru
Edward
Отправлено: 20 Января, 2011 - 23:39:06
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Нояб. 2010  
Откуда: Украина, Харьков


Помог: 0 раз(а)




Вот пример кода:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.         $ch = curl_init('https://auth.mail.ru/cgi-bin/auth');
  3.         curl_setopt($ch, CURLOPT_POST, 1);
  4.         curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729)
  5. ');
  6.         $headers = array ('Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
  7. ', 'Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
  8. ', 'Accept-Encoding: gzip,deflate
  9. ', 'Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
  10. ');
  11.         curl_setopt($ch, CURLOPT_HTTPHEADER,$headers);
  12.         curl_setopt($ch, CURLOPT_REFERER, "http://mail.ru");
  13.         curl_setopt($ch, CURLOPT_POSTFIELDS, 'Login=mail&Domain=inbox.ru&Password=password');
  14.         curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");  
  15.         curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
  16.         curl_setopt($ch, CURLOPT_HEADERS, 1);
  17.         $result = curl_exec($ch);
  18.         curl_close($ch);
  19.         echo $result;
  20. ?>


После запуска ничего не происходит, отснифил запросы, вроде обращается к серверу mail.ru с моими данными, но прежде почему то обращается ко всем поисковикам, точнее к большинству. А еще в заголовке запроса в самом начале пишется:
Цитата:

/curl/index.php
host: localhost

Так и надо? возможно тут должны быть сервера mail.ru? Или это свидетельствует о том, что сначала идет обращение на локалхост к моему сценарию, а потом уже он выполняется.

И еще: строки:
PHP:
скопировать код в буфер обмена
  1.  
  2.         curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");  
  3.         curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
  4.  

принимают куки или отправляют? Для того, что бы залогиниться, нужно предварительно как то получить куки, записать их в файл, потом, используя их, уже пробовать залогиниться? Нужно ли чистить куки в броузере перед запуском такого скрипта?
 
 Top
Delovoy
Отправлено: 21 Января, 2011 - 12:32:17
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Нояб. 2010  


Помог: 0 раз(а)




Edward пишет:
После запуска ничего не происходит, отснифил запросы, вроде обращается к серверу mail.ru с моими данными, но прежде почему то обращается ко всем поисковикам, точнее к большинству.
- Это нормально, собирается статистика посещаемости сайта и все в таком духе


судя по https://auth[dot]mail[dot]ru/cgi-bin/auth
тебе нужно добавить настройку SSL

//настройка SSL
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

Edward пишет:
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");

первая сохраняет полученные от сайта куки
вторая - добавляет к твоему запросу полученные куки
 
 Top
JustUserR
Отправлено: 21 Января, 2011 - 14:28:59
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Edward Для осуществления корректной автоматизированной авторизаци на целевом web-узле средствами PHP-приложения - необходимо обеспечивать контроль корректности передаваемых информационных полей и уровня их тарктования относительно управляющих элементов и текущую кодовую таблицы - для реализации указанных действий необходимо произвести сверку генерируемой формы HTTP-запроса и ее оригинального представления в браузере
Кроме того при осуществлении авторизации на почтовом сервере mail.ru - необходимо включить параметр асоциированных с флагом "Чужой компьютер" - который включает упрощенную схему системы авторизации


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB