@andrey_levushkin

Как передать значение многострочной переменной в POST запросе?

Отправляю такой post запрос на сервер:
$token = 'xxx';
$userids = 'yyy';
$message = file_get_contents('test.txt');
    if( $curl = curl_init() ) {
    curl_setopt($curl, CURLOPT_URL, "https://api.vk.com/method/messages.send?user_ids=$userids&message=$message&access_token=$token&v=5.85");
    curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);
    curl_setopt($curl, CURLOPT_POST, true);
    curl_setopt($curl, CURLOPT_POSTFIELDS, "a=4&b=7");
    $out = curl_exec($curl);
    echo $out;
    curl_close($curl);
  }
?>

В переменную $message помещаются данные из файла test.txt, в котором хранится набор символов с пробелами и переносами на новую строку, например:
1
2
3 4 5

Но при попытке запустить скрипт на сервере - ничего не происходит - скрипт не работает

Если проворачивать это же, но в файле test.txt будет просто набор символов без пробелов и переносов на новую строку: 12345
То всё работает
  • Вопрос задан
  • 314 просмотров
Решения вопроса 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
$message = urlencode(file_get_contents('test.txt'));
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
slo_nik
@slo_nik Куратор тега PHP
Добрый вечер.
Попробуйте так:
$message = preg_replace(["#\s+#"], '',file_get_contents('text.txt'));
Ответ написан
Ваш ответ на вопрос

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

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