Как заполнить поле формы с помощью Curl?

подскажите пожалуйста, что я делаю не так.
есть форма
<form action="/index.php" method="post" enctype="multipart/form-data">
<p>Имя: <input name="name" type="text"></p>
<p>Фамилия: <input name="surname" type="text"></p>
<p><input type='submit' name="upload" value='Отправить'></p>
</form>

данная форма размещена по адресу curl/form2.php
есть файл index.php (curl/)
тестирую на локальном хостинге (Open Server)
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://curl/form2.php/');
curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, "name=hi&surname=ok");
$out = curl_exec($curl);
echo $out;
curl_close($curl);

Если я правильно понимаю то при заходе на страницу index.php должны передаться вводимые данные.
Пробовал заходить на страницу curl/form2.php но все равно ни чего не получается.
если в строке curl_setopt($curl, CURLOPT_URL, 'curl/form2.php'); подставить curl/index.php то опенсервер вообще перестает работать. Подскажите что я делаю не так?
  • Вопрос задан
  • 1642 просмотра
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
для тестов: https://httpbin.org/

смотри логи

и - чем не устроил localhost ?
Ответ написан
@ReFeRy
Вы явно плаваете в теории. Curl не заполняет поля форм, он отсылает http-запросы, как поступает браузер, в случае использования сайта пользователем. Приведенная форма отправляет запрос на адрес /index.php, значит и curl должен слать туда же и слэша на конце адреса быть не должно, раз вы имя скрипта пишете. А далее вопрос уже к скрипту index.php, что он там в ответ на запрос отвечает. Попробуйте вывести ошибку curla, в сети легко нагуглить, как это делается.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы