cURL - не могу получить ответ POST - PullRequest
1 голос
/ 19 октября 2010

Я пытаюсь основную вещь.У меня есть два файла: curl.php и form.php

curl.php

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost/test/test34_curl_post/form.php");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, array(
    'nabc' => 'fafafa'
));
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>   

form.php

<form action="form.php" method="post">

<input type="hidden" name="nabc" value="abc" />
<input type="submit" name="submit" value="Send" />

</form>


<?php

if(isset($_POST['submit']))
{
 echo '<br />Form sent!'.$_POST['nabc'];
}
?>

Я надеюсь получить результат в результате запуска curl.php, чтобы увидеть «Форма отправлена!».Кажется, как будто он не был отправлен как POST.В Firebug (сеть) есть только один запрос GET, и я получаю форму, ничего не отправлено.Кто-нибудь, пожалуйста, помогите.

1 Ответ

1 голос
/ 19 октября 2010

Вы не отправляете 'submit' в ваших данных POST, поэтому isset($_POST['submit']) будет ложным. Вам необходимо сделать следующее:

curl_setopt($ch, CURLOPT_POSTFIELDS, array(
    'nabc' => 'fafafa',
    'submit' => 'Send' // if you want 'submit' in $_POST you need this
));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...