Php неправильно кодирует кириллические символы
Отправляю данные их пхп на rest-api. Запрос идёт корректно, но сами параметры неправильно кодируются.
На стороне rest-api я вижу кириллические символы вот таким образом ('fname', 'Ð\x9fеÑ\x82Ñ\x80о'). Подскажите где я ошибся
<?php
header('Content-Type: text/html; charset=utf-8');
header('Content-Transfer-Encoding: 8bit');
$curl = curl_init();
$url = explode('?', $_SERVER['REQUEST_URI'], 2);
$url = 'http://' . $_SERVER['HTTP_HOST'] . $url[0];
curl_setopt_array($curl, array(
CURLOPT_URL => 'xxx:8080/insert_zayavka?token=token2&subid='.$_POST['subid'].'&fname='.$_POST['f_name'].'&sname='.$_POST['l_name'].'&patr=&email='.$_POST['email'].'&ph$
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Ответы (1 шт):
Автор решения: DiD
→ Ссылка
Вы забыли про urlencode()
'xxx:8080/insert_zayavka?token=token2&subid='.urlencode($_POST['subid']).'...';