Задать вопрос
Arios
@Arios

Как отправить данные с локального сервера на внешний?

Привет всем!
Есть необходимость с одного сервера (локальный) на другой (внешний) отправить данные и записать их в бд. Насколько я знаю есть библиотека curl с помощью которой можно это реализовать, но у меня не получается.
Вот что у меня есть:
function isDomainAvailible($domain)
{
    //проверка на валидность урла
    if(!filter_var($domain, FILTER_VALIDATE_URL))
    {
        return false;
    }
    $fields = array('title' => 'Тестовое сообщение', 'content' => "Тестовое описание");
    //инициализация curl
    $curlInit = curl_init($domain);
    curl_setopt($curlInit, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curlInit, CURLOPT_POST, true);
    curl_setopt($curlInit, CURLOPT_POSTFIELDS, $fields);
    //получение ответа
    $response = curl_exec($curlInit);
    curl_close($curlInit);
    if ($response) return true;
    return false;
}
  • Вопрос задан
  • 252 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
function isDomainAvailible($domain)
{
    //проверка на валидность урла
    if(!filter_var($domain, FILTER_VALIDATE_URL))
    {
        return false;
    }
    $fields = array('title' => 'Тестовое сообщение', 'content' => "Тестовое описание");
    //инициализация curl
    $curlInit = curl_init();
    curl_setopt($curlInit, CURLOPT_URL, $domain);
    curl_setopt($curlInit, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curlInit, CURLOPT_POST, true);
    curl_setopt($curlInit, CURLOPT_POSTFIELDS, $fields);
    //получение ответа
    $response = curl_exec($curlInit);
    curl_close($curlInit);
    var_dump($response);
    if ($response) return true;
    return false;
}

$curlInit = curl_init($domain);
Заменяем на
$curlInit = curl_init();
а урл передаем строкой
curl_setopt($curlInit, CURLOPT_URL, $domain);
Ответ написан
Вместо

curl_setopt($curlInit, CURLOPT_POSTFIELDS, $fields);

Надо так

curl_setopt($curlInit, CURLOPT_POSTFIELDS, http_build_query($fields));
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽