Неверная кодировка при сохранении файла

  • Автор темы Автор темы artnik7
  • Дата начала Дата начала

artnik7

Новичок
На сервер передается методом post имя файла, к примеру også.mp3. Но в результате, файл сохраняется как ogsГҐ.mp3. Я проверил, сервер получает название правильно, без искривления кодировки. Но именно при сохранении, в имени файла, почему-то символы перекодирываются.

Код такой:
PHP:
$mp3_file_local = ABSPATH.'/mp3/norsk/'.$_POST['word'].'.mp3';
$mp3_file_remote = file_get_contents($mp3_url);
$f = fopen($mp3_file_local, 'w');
fwrite($f, $mp3_file_remote);
fclose($f);
Подскажите, в чем может быть причина?
 
Передается в UTF-8. Знаю только что это из норвежской кодировки
 
artnik7
значит файловая система сервера не в utf, воспользуйтесь транслитерацией
 
Насчет файловой системы — скорее всего в ней и проблема. У меня на локалке сайт стоит (Windows7 и Denwer). Наверно придется названия писать цифрами, типа 12345.mp3
 
Не проблема в win7 - она отлично юникодные имена сохраняет
 
Не проблема в win7 - она отлично юникодные имена сохраняет
Но не UTF-8. И, кстати, если честно, я решения не вижу, что подтверждается SO("It can't currently be done on Windows").

Как альтернативное решение - отключить данный функционал под виндой и писать латиницей. А на серверах делать нормально.
 
Спасибо за инфу. Решил не заморачиватся и сделал названия в таком виде "o_123123.mp3". Просто в базе пометил какое название для какого файла идет
 
Сверху