curl авторизация + ajax

Discussion in 'PHP' started by justonline, 12 Jan 2012.

  1. justonline

    justonline network ninja

    Joined:
    27 Jul 2011
    Messages:
    499
    Likes Received:
    60
    Reputations:
    53
    Доброе время суток.
    Требуется авторизоваться на сайтe zzima.com
    Там авторизация на ajax, с которой я не понимаю, как работать.
    Пытался прицепить куки,
    но ноль эмоций.
    Если кто может помочь - буду благодарен.
    Тут или в личку :)
     
    #1 justonline, 12 Jan 2012
    Last edited: 12 Jan 2012
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    justonline сниффер в зубы и вперед.
     
    _________________________
  3. Flisk

    Flisk Member

    Joined:
    4 Aug 2010
    Messages:
    147
    Likes Received:
    8
    Reputations:
    -2
    Я не особо спец по курлу, но насколько я вижу, тут ошибка:
    Code:
    curl_setopt($curl, CURLOPT_COOKIEFILE, 'cookie.txt'); // страница видна только авторизованному пользователю
    curl_setopt($curl, CURLOPT_COOKIEJAR, "cookie1.txt"); 
    1. Сначала идет COOKIEJAR, запись кук в файл, а потом COOKIEFILE, чтение.
    2. Файл .txt должен быть один и тот же.
     
  4. flash.kosta

    flash.kosta New Member

    Joined:
    4 Nov 2011
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    вот, смотри, что у тебя уходит на авторизацию:

    http://www.zzima.com/ajax.php?page=account&action=login

    POST /ajax.php?page=account&action=login HTTP/1.1
    Host: www.zzima.com
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1
    Accept: application/json, text/javascript, */*
    Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip, deflate
    Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
    Connection: keep-alive
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    X-Requested-With: XMLHttpRequest
    Referer: http://www.zzima.com/
    Content-Length: 54
    Cookie: userhash=for_309e0ff019d14f6f451b0e160ed3a705_crap; __utma=135808314.1204727124.1326358979.1326358979.1326358979.1; __utmb=135808314.1.10.1326358979; __utmc=135808314; __utmz=135808314.1326358979.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
    Pragma: no-cache
    Cache-Control: no-cache
    data%5Bemail%5D=rrr&data%5Bpassword%5D=123&remember=on

    переводим строку отправляемых данных в понимаемый нами формат:

    data=rrr&data[password]=123&remember=on

    вот, теперь ты можешь авторизоваться на своем сайте посредством curl, получить печеньки и потом подставить их, чтобы получить нужное тебе содержание или же выдрать значение их header'а и также подставить в печеньку. Будут вопросы, спрашивай.