Выручайте - тону....

12 3
A4
На сайте с 05.01.2012
Offline
55
1834

В общем суть проблеммы типична, ею заполнен гугл, но как всегда ничего адкватного там нету, я даже английскую часть порыл и stackoverflow...((

Имеется .mp3 файл и ссылка на него такого вида(для примера) /audio/1/Моя песня.mp3

Мной написан проигрыватель на javascript, который это все воспроизводит. На основе этого опять же разработан отличный сайт, на чистом пхп с применением аякс(никаких фреймворков), но тут я уткнулся в стену - файл НЕ проигрывается из за того, что в его названии Русские буквы. То есть такой файл - /audio/1/mysong.mp3 без проблем играет и не создает проблем. Что примечательно на Денвере все работает, а вот на хостинге - нет. Кодировка сайта - utf-8, работа велась под виндоуз(о чем и жалею сейчас, но поздно). Этот баг тормозит запуск проекта уже 2 недели:madd:. могу .htacess показать:

Options +FollowSymLinks
Options -Indexes
DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt|public)
RewriteCond %{REQUEST_URI} !\.(/|\.css|\.js|\.jpg|\.gif|\.png)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
AddDefaultCharset utf-8
Options +ExecCGI
AddType application/octet-stream .swf
AddType application/octet-stream .mp3

Как я его только не крутил....

То-же самое с картинками: тег <img url="/images/барбарастрейзен.jpg" .> не катит и не работает - то есть не отображает саму картинку, а пишет, как не трудно догадаться 404 ошибку где примерно такое file /images/кракозябры/имя not exist

Откуда берутся кракозябры мне не понятно. Вроде я в хтакесс указал кодировку сайта, разве урл не передаются ему в этой самой кодировке? Я даже вдс себе приобрел на месяц, чтобы настройки apashe покрутить, но в итоге все то-же самое, как ни крути... А 600 рублей потерял(

Ребята, кто сталкивался с подобным - Скажите пожалуйста как Решить проблему?! Не могу сказать, что это срочно, но я не хочу забрасывать то, что писал бессонными ночами, из - за какой-то дурацкой кодировки... Я не скажу что все срочно, просто у меня сессия, а я никак на учебу не могу переключится - все у компа ssh долблю или кодировки файлов в нотепаде в тысячапервыйраз прописываю через header('Content-type: text/html; charset=utf-8');

Это к стати не решает вопроса(((

Вот смотрите - даже 70% из того, что должно быть - отсутствует((

http://aftamat4ik.ru/

И музыка не проигрывается, как я уже писал, хотя ссылки верные.

Закачивалось все через ftp totalCommander(ибо только он воспинимает хоть как-то русскоязычные имена файлов)

Меня это все губит - я так сессию не сдам:(:D:. Помогите пожалуйста. Я постарался изложить информацию наиболее подробным образом. Благодарю.

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#1

А не проще поменять все названия на английские? В чем проблема?

Подпись))
A4
На сайте с 05.01.2012
Offline
55
#2

И? Ну конечно так прощще, но проблемма то в том, что я не желаю хранить в базе данных русское название песни и ее англоязычное имя в поле. Я делаю так, примерно substring(тут имя файла, тут dirname(__FILE__)./и путь до папки с записью,-4). -4 уберает с конца .mp3 - в разы, я бы сказал в тысячу раз упрощает работу. К тому-же админки у сайта в природе не существует-> отсюда следует, что придется все(пока ок 1000 файлов) прописывать в базе через пхпмайадмин или скрипт, где в соответствии русскому имени ставить ее английское имя.

_______________

А вам слабо*? хДД

B
На сайте с 07.12.2009
Offline
42
#3
Милованов Ю.С:
А не проще поменять все названия на английские? В чем проблема?

Это самый оптимальный вариант. Все переделайте в транслит и не будет проблем.

A4
На сайте с 05.01.2012
Offline
55
#4

кхм, ну хороше, но трудоемко это - сессию пропущу, и не продуктивно, и вообще не так быть должно хДД

L
На сайте с 03.02.2009
Offline
66
#5

отвечают те кто не знает как решить сию проблемму )))

p.s. Тоже не знаю решения... только если записать все назания в столбец SQL и по id их уже находить, а названия поменять на номер id

B
На сайте с 07.12.2009
Offline
42
#6
aftamat4ik:
...я бы сказал в тысячу раз упрощает работу....

Как это упрощает работу, если у вас УЖЕ проблемы? В место того чтобы сделать все с нормальной базой данных(Куда можно добавить и id, и название, и перевод, и текст и т.д) вы решили все сделать через жопу

A4
На сайте с 05.01.2012
Offline
55
#7

Ну как бы mysql, и не надо холивар открывать на тему какая бд лучше. Мне на это начхать. Есть у меня поле Ид в таблице(ключевое авто инкремет). Ну скажем так, то есть вы предлагаете дать песням названия по ид, типа /audio/1.mp3 а ее название в бд самому прописать?, то есть все песенки катарсиса арии и майданова...и т.п. ручками ковать?, их ок 1000) не это не легче, на самом деле не легче...

---------- Добавлено 11.06.2012 в 21:37 ----------

Да это вариант, как не странно. Вчитался, понял в чем суть)) В общем то сложного нету, можно и покодить)) Благодарю за совет.

Ну сейчас вообще мало кто работал с аякс хешированием и созданием такого рода проектов) Все я на пхп.ру)

L
На сайте с 03.02.2009
Offline
66
#8

зато будет работать, и при венесении новой песни с названием на арабском языке ошибки не будет. и тд...

Hixon10
На сайте с 21.08.2010
Offline
125
#9

То, что я сейчас скажу, возможно, является глупостью, но попробовать стоит.

Как я понимаю, ваш js скрипт принимает путь до трека http://site.com/test.mp3 или http://site.com/тест.mp3. В первом варианте все работает, во втором - нет.

Вроде бы кто-то решал подобную проблему так: он передавал не обычный путь до файла, а путь, закодированный base64. В этом случае даже русские пути будут написаны английскими буквами.

Однако, я не знаю, будет ли ваш плеер воспроизводить ссылки, закодированные в base64. Также не факт, что я правильно понял проблему.

Веду свой невзрачный блог (http://hixon.ru/).
L
На сайте с 03.02.2009
Offline
66
#10

и в результате что вы будете делать ? ) я что то не вкурю с каким советом вы согласились )))

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий