Я пытаюсь открыть URL-адрес с закругленным концом, эхо текст на этой странице. URL-адрес отправляет параметры скрипту python и создает файл в соответствии с параметрами. Итак, я отправляю параметры функции wordpress через ajax, эти части работают, он получает параметры без какой-либо ошибки, затем я создаю url с этим и используя curlopt_url, чтобы открыть его в backend. Затем эхо-сигнал для отправки данных в ajax.CURL меняет неанглийские символы при открытии url
function my_function() {
$param1 = $_REQUEST['p1'];
$param2 = $_REQUEST['p2'];
$url = "http://localhost:1234/handle?a=$param1&b=$param2";
$ch = curl_init();
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_URL, $url);
$store = curl_exec ($ch);
echo substr($store, 1);
curl_close ($ch); exit();
Предположим, что p2 содержит не английские символы, такие как S, G, I и т.д .. Функция получает ее правильно (я могу видеть, когда я эхо $ URL вместо ответа), но в CURLOPT_URL части они меняется. Кроме того, когда я открываю браузер формы URL, он отлично работает.
Неправильные настройки кодировки символов для php. В этой теме много учебников. Вы должны позаботиться о том, чтобы настроить всю цепочку инструментов для использования кодировки utf8. – arkascha
Использовать urlencode ($ _REQUEST ['p2']); – devpro
@arkascha Это UTF-8, я не думаю, что это источник проблемы. Все работает отлично, кроме curl –