Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (13) « Первая ... 7 8 [9] 10 11 ... Последняя » ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Авторизация с помощью CURL, На примерах
Winston  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 8 лет, 2 дня
Карма: 552




Во первых у тебя здесь ошибка
Цитата (Guest @ 4.01.2013 - 11:22)
'&ip_h=' . $ip_h; . '&email='


Во вторых если посмотреть в консоль ошибок, можно увидеть
Цитата
Uncaught Error: SECURITY_ERR: DOM Exception 18
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zelenin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 62
Пользователь №: 35843
На форуме: 4 года, 6 месяцев, 24 дня
Карма: 1




может быть кому-то поможет, выложил свой класс для работы с CURL https://github.com/zelenin/curl
Поддерживает get и post, cookie. Авторизоваться - дело минуты.
Пока предоставляет не полный функционал курла, но в 95% случаях хватит за милую душу.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
ICEsoon  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователи
Сообщений: 2
Пользователь №: 36465
На форуме: 4 года, 4 месяца, 21 день
Карма:




Всем Здраствуйте, Обращаюсь к более опытным php разработикам, так как решить задачу на текущий момент сам не смог.

Итак задача.
Есть сайт asos.com (логин:icesoon@inbox.ru, pass:www1111). Необходимо, чтобы товары, добавленные в корзину, скрипт обновлял(нажимал на кнопку обновить) раз в 30 минут, иначе резерв снимается (резерв стоит 1 час) и товары с корзины удаляются.

Написал код. Авторизация происходит без проблем. Но с отправкой post запроса ({ "currentInventoryId" : "2612937" , "currentItemId" : "668388760" , "changeBasketItemInventoryId" : "2612937" , "quantity" : "1"}) на обновление происходит затык.

Как решить проблемку? Очень нужно.


<?php

$asos = curl_init ();
curl_setopt ($asos,CURLOPT_FOLLOWLOCATION,1);
curl_setopt ($asos, CURLOPT_FRESH_CONNECT,1);
curl_setopt ($asos, CURLOPT_RETURNTRANSFER,1);
curl_setopt($asos, CURLOPT_FAILONERROR,0);
curl_setopt($asos, CURLOPT_TIMEOUT,11); // макс. время выполнение каждой функции сек
curl_setopt ($asos, CURLOPT_UNRESTRICTED_AUTH,1);
curl_setopt ($asos, CURLOPT_CONNECTTIMEOUT,60); //таймаут
curl_setopt ($asos, CURLOPT_MAXCONNECTS,15); //максимум соединений
curl_setopt($asos, CURLOPT_HEADER, 1); // выводим заголовки
curl_setopt ($asos, CURLOPT_URL,"https://www.asos.com/");// страница куда отправляется пост запрос
curl_setopt($asos, CURLOPT_POST,1); // устанавливаем метод POST
curl_setopt($asos, CURLOPT_POSTFIELDS,'__LASTFOCUS=&__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKLTgzODA2MjE5OA9kFgJm D2QWBAIBD2QWBAICD2QWAgIBDxYCHglpbm5lcmh0bWwFDlNpZ24gaW4gfCBBU09TZAIDD2QWAgIDD2QWAmYPFgIeC18hSXRlbUNvdW50AgEWAmYPZBYCZg8VAg5EQ1NleHQuY291bnRyeQJVQWQCAw8WAh4FY2xhc3MFAmdiFgICAQ9kFgICAQ9kFgYCAw9kFgICAQ8PFgIeC EltYWdlVXJsBVFodHRwczovL2Fzc2V0cy5hc29zc2VydmljZXMuY29tL2Fzb3Mtc2VjdXJlL2ltYWdlcy9jb3JlL2Fzb3MtbWFpbi1oZWFkZXItbG9nby5naWZkZAIFDxYCH wAFB1NpZ24gSW5kAgsPZBYEAgEPZBYGAgMPD2QWAh4MYXV0b2NvbXBsZXRlBQNvZmZkAgcPD2QWAh8EBQNvZmZkAgkPD2QWAh4Hb25DbGljawUXcmV0dXJuIHZhbGlkYXRlbG9naW4oKTtkAgMPZBYEAgEPFgIeB1Zpc2libGVoFggCAQ8WAh4EVGV4dAUMVGhhbmsgeW91Li4uZAIDDxYCH wcFQldlIGhhdmUgc2VudCBhIHBhc3N3b3JkIHJlc2V0IGxpbmsgdG8gdGhlIGZvbGxvd2luZyBlbWFpbCBhZGRyZXNzOmQCBw8WAh8HBTNQbGVhc2UgZm9sbG93IHRoZSBsaW5rICYgcmVzZ XQgeW91ciBwYXNzd29yZCB3aXRoaW5kAgsPFgIfBwUGaG91cnMuZAIDD2QWBAIBDxYCHwcFV0VudGVyIHlvdXIgQVNPUyByZWdpc3RlcmVkIGVtYWlsIGFuZCB3ZSB3aWxsIGVtYWlsIHlvdSBhIGxpbmsgdG8gY3JlYXRlIGEgbmV 3IHBhc3N3b3JkOmQCBQ8PFgIfBwURUkVTRVQgTVkgUEFTU1dPUkQWAh8FBR9yZXR1cm4gdmFsaWRhdGVlbWFpbHJlbWluZGVyKCk7 ZGS2W%2F2cKboTUCBXhTOaS0rntV%2F81A%3D%3D&__EVENTVALIDATION=%2FwEWCAKpssjhBwKLuK7GCwL62p7EAwKxsdjYAgLEne%2BKDgLxuc%2FMCwLa 8P2aAwL96M1fnhDtGkQ5lYSuYtbKAWOfM1pe73w%3D&_ctl0%3AContentBody%3ABackUrlField=http%3A%2F%2Fwww.asos.com%2Fpgeproduct.aspx%3Fvia%3Drec%26iid %3D2711331%26%26action%3Dsignout&_ctl0%3AContentBody%3AtxtEmail=icesoon%40inbox.ru&_ctl0%3AContentBody%3AtxtPassword=www1111&_ctl0%3AContentBody%3AbtnLogin=Sign+in&_ctl0%3AContentBody%3AtxtEmailReminder=');
curl_setopt($asos, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie5.txt');//записываем куки
curl_setopt($asos, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie5.txt');
curl_setopt($asos, CURLOPT_USERAGENT, "Opera/12.00 (Windows NT 5.1; U; ru) Presto/2.2.0"); //описываем информацию о себе useragent
curl_setopt ($asos, CURLOPT_REFERER,'https://www.asos.com/pgecustlogin.aspx');
curl_setopt ($asos, CURLOPT_SSL_VERIFYHOST, 0);//не проверяем ssl
curl_setopt ($asos, CURLOPT_SSL_VERIFYPEER, 0);

$print = curl_exec($asos); // логинимся
echo $print;
curl_setopt($asos, CURLOPT_POST,1); // устанавливаем метод POST
curl_setopt ($asos, CURLOPT_URL, "http://www.asos.com/basketservices/UpdateBasketItem.asmx/UpdateBasketItem");
curl_setopt($asos, CURLOPT_POSTFIELDS, '{ "currentInventoryId" : "2612937" , "currentItemId" : "668388760" , "changeBasketItemInventoryId" : "2612937" , "quantity" : "1"}');
curl_exec($asos);
curl_close($asos);
?>


user posted image
2 - это клик на обновление
3 - сам пост запрос
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AlexAlex  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 5
Пользователь №: 35232
На форуме: 4 года, 9 месяцев
Карма:




Вероятно имеет смысл попробовать так:


$post = array(
"currentInventoryId" => 2612937,
"currentItemId" => 668388760,
"changeBasketItemInventoryId" => 2612937,
"quantity" => 1
);
(...)

curl_setopt($asos, CURLOPT_POSTFIELDS, json_encode($post));
(...)
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
ICEsoon  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователи
Сообщений: 2
Пользователь №: 36465
На форуме: 4 года, 4 месяца, 21 день
Карма:




Цитата (AlexAlex @ 4.02.2013 - 15:51)
Вероятно имеет смысл попробовать так:


$post = array(
"currentInventoryId" => 2612937,
"currentItemId" => 668388760,
"changeBasketItemInventoryId" => 2612937,
"quantity" => 1
);
(...)

curl_setopt($asos, CURLOPT_POSTFIELDS, json_encode($post));
(...)

попробовал, не помогло. Может есть еще варианты? unsure.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
merqry  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 5
Пользователь №: 36369
На форуме: 4 года, 5 месяцев
Карма:




У меня проблема и куки не сохраняет, файла с кукуами просто нету.. я уже все поперепробовал..Делаю на локальной машине на денвере.
В чем может быть дело???


function post_content ($url,$postdata) {
$uagent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)";

$ch = curl_init( $url );
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_REFERER, "http://www.site.ru");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_USERAGENT, $uagent); // useragent
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, '\cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'D:\cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'D:/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');

$content = curl_exec( $ch );
$err = curl_errno( $ch );
$errmsg = curl_error( $ch );
$header = curl_getinfo( $ch );
curl_close( $ch );

$header['errno'] = $err;
$header['errmsg'] = $errmsg;
$header['content'] = $content;
return $header;
}
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zelenin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 62
Пользователь №: 35843
На форуме: 4 года, 6 месяцев, 24 дня
Карма: 1




curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, '\cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'D:\cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'D:/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'cookie.txt');

так и написано? или вы просто показали возможные варианты?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
merqry  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 5
Пользователь №: 36369
На форуме: 4 года, 5 месяцев
Карма:




Все эти варианты перепробовал, даже все вместе писал и по одному. файла с куками как не было так и нет. уже не знаю на что грешить даже. В какую сторону капать хоть?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zelenin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 62
Пользователь №: 35843
На форуме: 4 года, 6 месяцев, 24 дня
Карма: 1




curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__).'/cookie.txt');


такого варианта будет достаточно
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
merqry  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 5
Пользователь №: 36369
На форуме: 4 года, 5 месяцев
Карма:




Не помогло(((
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Osip  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . DIRECTORY_SEPARATOR . 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . DIRECTORY_SEPARATOR . 'cookie.txt');
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
BearPaw  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 10
Пользователь №: 37582
На форуме: 4 года, 22 дня
Карма:




Уважаемые форумчане, на вас вся надежда, помогите справится с авторизацией на майл.ру. Делаю все по вашему образцу, но авторизоваться не получается. Скажи что и где изменить или хотя-бы намекните. Буду очень признателен.

$url = 'http://mail.ru/';
$urlTo = 'https://auth.mail.ru/cgi-bin/auth';
$login = c("edit1")->text;
$pass = c("edit2")->text;
$domain = c("combobox1")->inText;
$post = 'Domain='.$domain.'&Login='.$login.'&Password='.$pass;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$html = curl_exec($ch);

curl_setopt($ch, CURLOPT_URL, $urlTo);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);


echo $html = curl_exec($ch);
echo '<pre>'.print_r(curl_getinfo($ch),1).'</pre>';
curl_close($ch);
echo $html;
c("chromium1")->url = $url;
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Winston  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 8 лет, 2 дня
Карма: 552




Цитата (BearPaw @ 3.06.2013 - 16:44)
Делаю все по вашему образцу, но авторизоваться не получается

Статье скоро 2 года, за это время, я думаю, механизм авторизации изменился на mail.ru. Потому нужно смотреть какие заголовки и данные отсылаются при авторизации.
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
BearPaw  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 10
Пользователь №: 37582
На форуме: 4 года, 22 дня
Карма:




Цитата
Статье скоро 2 года, за это время, я думаю, механизм авторизации изменился на mail.ru. Потому нужно смотреть какие заголовки и данные отсылаются при авторизации.


А Вы бы не могли глянуть, хоть одним глазом?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
BearPaw  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 10
Пользователь №: 37582
На форуме: 4 года, 22 дня
Карма:




О чем он мне говорит, а я его не понимаю?
http://floomby.ru/s1/YahHkq/full/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (13) « Первая ... 7 8 [9] 10 11 ... Последняя » Ответ в темуСоздание новой темыСоздание опроса