В общем, история такая
есть файл PHP, к которому обращаюсь из JS, передаю через ажакс данные, дабы в пыхе отправить запрос к АПИ. Ну и проблема в том, что как бы я не хотел написать на кириллице текст, он не переводил мне его в UTF-8, всегда была CP1251. Даже если в PHP файле захардкодить на кириллице, все равно некорректно выдаст, в следствие чего для гет запроса ломается ссылка и запрос не проходит.
<?php
header('Content-Type: text/html; charset=utf-8');
function api_request($data = '', $url = '') {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
$result = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
return $result;
}
if($_REQUEST['act']=='yl'){
$req = json_decode($_REQUEST['text'], true);
print var_dump($req);
$region = $req['region'];
$name = $req['legalname'];
$url = "https://api-ip.fssprus.ru/api/v1.0/search/legal?region=".$region."&token=token&name=".$name;
print $url;
$result = api_request("", $url);
print json_encode($result);
}
?>
и соответственно что передаю
var form_data = {
'token':"token",
'region':$('.selected-item').attr('data-value'),
'legalname':$('#legalname').val(),
'adress':$('#adress').val(),
}
$.ajax({
url: ./ajax.php?act=yl,
type: 'POST',
data: {'text': JSON.stringify(form_data)},
success: function(res) {
console.log(res);
}
Вот как бы решения на поверхности, но ничего, что нашел в поисковике - не помогло. Попробовал на разных серваках - тоже не помогло.