Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Flash

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Flash Plaeyr и русские названия
 
 автор: Alex_Sidneff   (10.06.2011 в 14:45)   письмо автору
 
 

Добрый день!
У меня проблема со вставкой прослушивания музыки через сайт.
<object type="application/x-shockwave-flash" data="player_mp3.swf" width="200" height="20">
<param name="movie" value="player_mp3.swf" />
<param name="bgcolor" value="#ffffff" />
<param name="FlashVars" value="mp3=data/media/1/ИМЯ.mp3&amp;bgcolor2=ffffff" />
</object>
Некоторые треки играют, а некоторые нет... Заметил, что русские названия он не понимает. Что делать?

  Ответить  
 
 автор: cheops   (10.06.2011 в 14:49)   письмо автору
 
   для: Alex_Sidneff   (10.06.2011 в 14:45)
 

Дело в том, что русские символы в URL (без перекодировки или специальной обработки) не допустимы. Лучше всего вообще отказаться от их использования. Если их использования необходимо, то такие имена лучше кодировать (например, PHP-функцией urlencode()), правда, тут можно нарваться на кодировку - разные операционные системы используют различные кодировки для хранения русских названий файлов.

  Ответить  
 
 автор: Alex_Sidneff   (10.06.2011 в 15:02)   письмо автору
 
   для: cheops   (10.06.2011 в 14:49)
 

Стоит Виндовс ХР 64Bit кодировка 1251
Но как в этот код вставить функцию urlencode() ?
Я не совсем понял

  Ответить  
 
 автор: cheops   (10.06.2011 в 15:35)   письмо автору
 
   для: Alex_Sidneff   (10.06.2011 в 15:02)
 

Вместо ИМЯ напишите <?php echo urlencode("ИМЯ"); ?>. Правда файл должен иметь расширение .php или обрабатываться PHP-обработчиком. Если флешка расположена в HTML-файле, назначить им PHP-обработчик можно при помощи .htaccess
RemoveHandler .html .htm  
AddType application/x-httpd-php .php .htm .html .phtml

  Ответить  
 
 автор: Alex_Sidneff   (10.06.2011 в 15:46)   письмо автору
 
   для: cheops   (10.06.2011 в 15:35)
 

Расширение .php
В Исходном коде фаил перекодируется из "Тимати - Я Буду Ждать" в "%D2%E8%EC%E0%F2%E8+-+%DF+%C1%F3%E4%F3+%C6%E4%E0%F2%FC.mp3" Поидее проблема решена! Но не играет...
Ещё есть варианты?

  Ответить  
 
 автор: cheops   (10.06.2011 в 15:49)   письмо автору
 
   для: Alex_Sidneff   (10.06.2011 в 15:46)
 

Я бы посоветовал перевести все имена файлов в транслит скриптом, и снабдить скрипт загрузки аналогичной функциональностью. Когда в дело вступает Apache + JavaScript + Flash + русский язык, можно очень долго разбираться в кодировках и преобразованиях (при условии, что у вас есть исходники флешки для вывода отладочной информации) и все пойдет прахом на другом хостинге или при переносе с Windows на UNIX.

  Ответить  
 
 автор: Alex_Sidneff   (10.06.2011 в 15:52)   письмо автору
 
   для: cheops   (10.06.2011 в 15:49)
 

Я Вас понял! Но тут ещё один совет пробрался! Перекодировать в utf8 из cp1251 Вот только как?

  Ответить  
 
 автор: Alex_Sidneff   (10.06.2011 в 15:56)   письмо автору
 
   для: Alex_Sidneff   (10.06.2011 в 15:52)
 

Вопрос решился!!!! <?php echo iconv("windows-1251", "utf-8", "Имя файла");?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования