У меня есть скрипт который отлично работает с базой, но проблема возникает когда пытаюсь отправить запрос содержащий кирилицу через php, когда как запрос через открытие url адреса в браузера работает отлично.
setlocale(LC_CTYPE, array('ru_RU.utf8', 'ru_UA.utf8'));
setlocale(LC_ALL, array('ru_RU.utf8', 'ru_UA.utf8'));
function call($method, $url, $data = false) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($ch, CURLOPT_URL, $url);
if ($data) {
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$headers = array();
$headers[] = 'Content-Type: application/json';
$headers[] = 'Content-Length: ' . strlen($data);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
return curl_exec($ch);
}
$query .= $GLOBALS['api']."/tables/?transform=1&filter[]=Name,eq,".$rus_name;
$decode = json_decode(call('GET', $query), true);
Если делаю echo $query и просто вызываю этот запрос в браузере все работает, если же в запросе есть кирилица и делаю запрос через call function то ничего не возвращается
$query = iconv('windows-1251', 'utf-8', 'русский текст');
и $query = urlencode($url); НЕ помогли...
Пожалуйста помогите, пол дня провозился
urlencode
необходимо использовать только для части URL, то есть, если применить urlencode целиком к адресу, будет закодировано, все, например:
echo urlencode("http://exmaple.com?et=ЗНАЧЕНИЕ");
// вывод - http%3A%2F%2Fexmaple.com%3Fet%3D%D0%97%D0%9D%D0%90%D0%A7%D0%95%D0%9D%D0%98%D0%95
а правильно будет:
echo "http://exmaple.com?et=".urlencode("ЗНАЧЕНИЕ");
// вывод - http://exmaple.com?et=%D0%97%D0%9D%D0%90%D0%A7%D0%95%D0%9D%D0%98%D0%95
То есть в вашем случае:
$query .= $GLOBALS['api'] . "/tables/?transform=1&filter[]=Name,eq," . urlencode($rus_name);
Виртуальный выделенный сервер (VDS) становится отличным выбором
Всем привет, имеется bitrix, значения свойств инфоблока хранятся в отдельной таблицеА как посмотреть где эта отдельная таблица ??? Пару часов...
ПриветУ меня есть веб-приложение, состоящее из html-разметки и встроенного <?php ?> кода