ФорумПрограммированиеPHP для идиотов → Кое что вырезать, и разобрать ответ в формате JSON

Кое что вырезать, и разобрать ответ в формате JSON

  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 14:31

    Нужно из строки вида

    http://vkontakte.ru/api/login_success.html#session={"mid":10422905,"sid":"250c52e0235ce200f3439720ee09e05d40ba61ecbb9598d8521543bede","secret":"fd6ea180ff","expire":0,"sig":"04628beb9ccd048c06f5086137a1d05c";}

    вырезать http://vkontakte.ru/api/login_success.html#session= и затем в массив записать (наверное при помоши json_decode) mid,sid,secret

    Проблема в том, что session это не GET. Это строка, поэтому нужно как то разобрать это дело (вырезать лишнее)

    Прошу о помоч, я сам натуральный нуб в этом. Тут вырезать наверное нужно регулярками, а сам я в php новичок))
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 12 сентября 2010 г. 14:45, спустя 14 минут 4 секунды

    $link  = 'http://vkontakte.ru/api/login_success.html#session={"mid":10422905,"sid":"250c52e0235ce200f3439720ee09e05d40ba61ecbb9598d8521543bede","secret":"fd6ea180ff","expire":0,"sig":"04628beb9ccd048c06f5086137a1d05c"} ';
    $pieces = explode("=", $link);
    print_r($pieces);
  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 14:48, спустя 2 минуты 38 секунд


    $link  = 'http://vkontakte.ru/api/login_success.html#session={"mid":10422905,"sid":"250c52e0235ce200f3439720ee09e05d40ba61ecbb9598d8521543bede","secret":"fd6ea180ff","expire":0,"sig":"04628beb9ccd048c06f5086137a1d05c"} ';
    $pieces = explode("=", $link);
    print_r($pieces);



    Спасибо, а я так сделал
    $var = str_replace("http://vkontakte.ru/api/login_success.html#session=","",$rr);
    щас пойду в массив эти данные попробую раскидать
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 12 сентября 2010 г. 14:53, спустя 5 минут 2 секунды

    щас пойду в массив эти данные попробую раскидать


    json_decode($json, true);

    ?????
  • md5

    Сообщения: 11951 Репутация: N Группа: в ухо

    Spritz 12 сентября 2010 г. 14:54, спустя 52 секунды


    щас пойду в массив эти данные попробую раскидать


    json_decode($json, true);

    ?????
    блять, вот кто тебя просил?
    щас он пойдет в массив)))
    все умрут, а я изумруд
  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 14:57, спустя 2 минуты 48 секунд

    щас он пойдет в массив)))

    щас пойду в массив эти данные попробую раскидать


    json_decode($json, true);

    ?????

    ништяк, все оказалось просто!

  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 15:28, спустя 31 минуту 9 секунд

    не пойму, почему жалуется что sig ошибочный, ведь даю

    $sig = md5($userID."api_id=".$appId."fields=photo,sexformat=JSONmethod=getProfilesuids=".$userID."v=3.0".$secret);

    $url = "http://api.vkontakte.ru/api.php?api_id=".$appId."&fields=photo,sex&format=JSON&method=getProfiles&uids=".$userID."&sid=".$sid."&sig=".$sig;



    кто нибудь создавал подпись для апи вконтакте?
  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 15:43, спустя 15 минут 29 секунд

    все, разобрался. Тема #
  • technobulka

    Сообщения: 4552 Репутация: N Группа: Джедаи

    Spritz 12 сентября 2010 г. 16:01, спустя 18 минут 7 секунд

    $var = str_replace("http://vkontakte.ru/api/login_success.html#session=","",$rr);

    =
    $var = str_replace("^([^{]+)","",$rr);

    XD
    Высокоуровневое абстрактное говно
  • technobulka

    Сообщения: 4552 Репутация: N Группа: Джедаи

    Spritz 12 сентября 2010 г. 16:08, спустя 6 минут 55 секунд

    чет моя регулярка на тупой набор символов смахивает))
    Высокоуровневое абстрактное говно
  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 12 сентября 2010 г. 17:07, спустя 58 минут 26 секунд

    а такой ответ как разрулить? 0_о

    {"response":[{"uid":10542605,"first_name":"рпрп","last_name":"рпрпрп","photo":"http:\/\/cs9989.vkontakte.ru\/u1047656\/c_4533e94b.jpg"}]} {+++144+++} или мне {"response":[ вырезать :D {+++117+++} аа туплю)
  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи

    Spritz 12 сентября 2010 г. 23:42, спустя 6 часов 35 минут 35 секунд


    все, разобрался. Тема #

    так расскажи ж как разобрался
  • ivanscm

    Сообщения: 1251 Репутация: N Группа: Джедаи

    Spritz 12 сентября 2010 г. 23:49, спустя 6 минут 39 секунд


    чет моя регулярка на тупой набор символов смахивает))
    прямо как патч Бармина :)
    С возвращением, Пiха!
  • Nox

    Сообщения: 204 Репутация: N Группа: Кто попало

    Spritz 13 сентября 2010 г. 3:49, спустя 3 часа 59 минут 43 секунды



    все, разобрался. Тема #

    так расскажи ж как разобрался
    да нет, не разобрался…

    Из {"response":[{"uid":10542605,"first_name":"рпрп","last_name":"рпрпрп","photo":"http:\/\/cs9989.vkontakte.ru\/u1047656\/c_4533e94b.jpg"}]} мне ну удалось создать массив ( не знаю как) обрезал {"response":[{"uid":10542605,"first_name":"рпрп","last_name":"рпрпрп","photo":"http:\/\/cs9989.vkontakte.ru\/u1047656\/c_4533e94b.jpg"}]} и получил

    {"uid":15522545,"first_name":"папа","last_name":"паапа","photo":"http:\/\/cs9989.vkontakte.ru\/u10422905\/c_4533паа.jpg"} но и сейчас json_decode($json, true); не работает. Пусто в переменной… {+++100+++} может из за того что я в Windows-1251 перевожу кодировку?
  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи

    Spritz 13 сентября 2010 г. 3:57, спустя 8 минут 4 секунды

    This function only works with UTF-8 encoded data.

    все может быть, все может быть

Пожалуйста, авторизуйтесь, чтобы написать комментарий!