Программный доступ и публикация формы, требующей сессии - PullRequest
0 голосов
/ 02 декабря 2009

Я пытаюсь использовать PHP и cURL для:

  1. Доступ к веб-форме и поддержка сеанса
  2. Отправка данных в эту форму с сеансом на месте

В голове я вижу две отдельные функции: одну для получения формы (инициировать сеанс) и другую для публикации данных.

Ответы [ 2 ]

1 голос
/ 02 декабря 2009

Вы можете выполнить вызов командной строки для curl из php, чтобы сохранить куки в файл, например:

curl -c '/tmp/mycookies.txt' 'http://www.site.com/login.php

Затем используйте эти куки при отправке на страницу следующим образом:

curl -b '/tmp/mycookies.txt' -d 'uname = MyLoginName & pass = MyPassword & action = login & x = 67 & y = 11' 'http://www.site.com/login.php'

Для получения дополнительной информации об этих флагах командной строки:

0 голосов
/ 02 декабря 2009

Вы найдете эту страницу полезной . В частности, проверьте CURLOPT_COOKIE, CURLOPT_COOKIEFILE и CURLOPT_COOKIEJAR.

Вы должны быть в состоянии сделать 2 запроса curl в одном и том же php-файле: один инициирует форму (и захватывает ваш сеансовый файл cookie, а затем помещает его в ваш файл cookie), а другой - ПОСТАВЛЯЕТ ваш запрос (используя те же файлы cookie).

Ознакомьтесь с комментариями ниже на этой странице для примеров. Возможно, вы также захотите взглянуть на примеры локонов PayPal, распространяющиеся по сети, они в значительной степени делают то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...