добавить переменную php на URL для использования cURL - PullRequest
0 голосов
/ 10 января 2019

У меня есть окно поиска, которое передает пользовательский ввод в мой cURL, чтобы выполнить поиск в веб-сервисе. Я думал о добавлении входных данных (или переменных) к URL, который я использую для подключения через cURL. Однако я думаю, что я делаю это неправильно. Имя хоста было специально удалено для сообщения.

// Specify the URL to connect to - this can be PHP, HTML or anything else!
curl_setopt($connection, CURLOPT_URL, "https://WebService.php?aRegion='$aRc'&aType=empty");

У меня, как полагают, было что-то еще, кроме '..' при использовании переменной php в ссылке, верно?

Ответы [ 2 ]

0 голосов
/ 10 января 2019

Не совсем уверен, что вы получаете или процесс получения информации, но вы можете попробовать это.

$user_input1 = $_GET['information_you_need_to_append_to_curl'];

$user_input2 = $_GET['other_user_info'];

$web_address = sprint_f("https://WebService.php?aRegion=%s&aType=%s", $user_input1, $user_input2);

curl_setopt($connection, CURLOPT_URL, $web_address);

Это позволит получить информацию из запроса на получение, сделанную в вашем PHP-документе, а затем добавить ее на ваш веб-адрес в конце вашего запроса curl.

Ознакомьтесь с документацией php для получения дополнительной информации о функции sprint_f

0 голосов
/ 10 января 2019

Тот URL, который вы используете в данный момент, на самом деле не имеет смысла ...

  1. проблема: вы забыли указать имя хоста. Без этого клиент http пытается разрешить hWebService.php с помощью разрешения имени домена, которое не будет выполнено, поскольку это не действительное имя хоста.

  2. вы используете недопустимые символы в вашем URL.

Вот подход, который должен быть близок к тому, что вам, наконец, нужно, легко читается (что важно важно!), А также заботится о url-кодировании значений переменных:

curl_setopt(
    $connection, 
    CURLOPT_URL, 
    sprintf(
        "https://example.com/hWebService.php?aRegion=%s&aType=empty", 
        urlencode($aRc)));

Примечание: "example.com", очевидно, является лишь примером.


Обновление: вы спрашиваете, как ввести значение второй переменной в качестве aType параметра get. Вот модифицированная версия:

curl_setopt(
    $connection, 
    CURLOPT_URL, 
    sprintf(
        "https://example.com/hWebService.php?aRegion=%s&aType=%s", 
        urlencode($aRc), 
        urlencode($aType)));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...