Заполните форму другого сайта и отправьте ее - PullRequest
2 голосов
/ 22 июля 2011

Я искал в Интернете и ничего не нашел.

На сайте есть поле ввода для адреса электронной почты.Я хотел бы заполнить это поле адресом электронной почты и отправить форму.Затем я получу весь исходный код с веб-сайта.

Я не хочу хочу передать это по URL-адресу, например "? Myvar = test & myvar2 = test2".Я искал примеры для CURL, но ничего не нашел.

Я только хочу заполнить форму, отправить ее и получить исходный код.Или есть аддон для firefox или бесплатная программа?

С наилучшими пожеланиями KalTo

Ответы [ 2 ]

3 голосов
/ 22 июля 2011

Вам нужно будет посмотреть на атрибут действия формы. Это должно указать вам на сценарий, в котором размещена форма. Если у вас есть эта информация, вы можете отправить запрос POST на этот URL, используя curl или в php,

$postdata = http_build_query(
    array(
        'email' => 'youremailaddress'
    )
); 
$opts = array('http' =>
    array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => $postdata
    )
);

$context  = stream_context_create($opts);

$result = file_get_contents('http://example.com/submit.php', false, $context);
0 голосов
/ 22 июля 2011

Вы можете сделать это, но не так, как вы ожидаете. Чтобы POST формы, вам нужно сначала получить исходный код для нее (с Curl, или как вам больше нравится). Для каждого input в форме вы сохраняете name и присваиваете ему значение. Затем вам нужно отправить эти значения с соответствующими именами на action URL-адрес form, используя method и enctype, указанные в форме.

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