Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.09.2018, 15:58   #1
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
Восклицание Файловая система, Кодировка

Всем Привет!

Столкнулся с проблемой
Код:
<?php
$dir    = '../audio';
$files1 = scandir($dir);
//$files2 = scandir($dir, 1);

print_r($files1);
//print_r($files2);
?>
получил вот это
Array ( [0] => . [1] => .. [2] => 16.������.mp3 [3] => Kukushka.mp3 [4] => audio1.mp3 [5] => audio2.mp3 [6] => ������ ��� )

в браузере пробовал менять кодировки - результата ноль, помогите плиз...
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 05.09.2018, 16:25   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

плохо пробовали. Лучше задать сразу в скрипте кодировку.
+ сам скрипт тоже должен быть в той же кодировке (лучше utf8)
ну и использовать кирилицу в названиях файлов на серваках некошерно (линукс итд итп)
ADSoft вне форума Ответить с цитированием
Старый 05.09.2018, 16:39   #3
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
плохо пробовали. Лучше задать сразу в скрипте кодировку.
+ сам скрипт тоже должен быть в той же кодировке (лучше utf8)
ну и использовать кирилицу в названиях файлов на серваках некошерно (линукс итд итп)
в скрипте
Код:
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8" />
есть

имена файлов на серваке полностью согласен... прикол в том что узверы будут сами заливать файлы на сервак и какие там имена сами понимаете...

как побороть?
ковыряться с кодировками? у меня не получается, наберусь наглости и попрошу накидать скрипт, там всего то несколько строчек
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 05.09.2018, 16:41   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Возьмите iconv, например, и перекодируйте из вин1251б кои или что там у вас в нужное.
p51x вне форума Ответить с цитированием
Старый 05.09.2018, 20:00   #5
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

вообще обычно делается так - пользователь заливает хоть на китайском, хоть на арабском языке файлы, для них генерятся свои внутренние названия - под ними и зписываются на диск, а названия - в БД (а так же размеры, даты итд например)
ADSoft вне форума Ответить с цитированием
Старый 06.09.2018, 08:25   #6
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
для них генерятся свои внутренние названия - под ними и зписываются на диск
можно поподробней?
пользователь выбрал файл на арабском, для него генерится новое имя на стороне клиента и файл уходит на сервер уже под новым именем?
но как скрипт увидит этот файл? у меня при обращении к файлу со скрипта на киррилицу уже матюки заворачивает
Код:
Warning: fopen(Ю.mp3) [function.fopen]: failed to open stream: No such file or directory in ...
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!

Последний раз редактировалось spirit-ua; 06.09.2018 в 08:28.
spirit-ua вне форума Ответить с цитированием
Старый 06.09.2018, 08:40   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Так наоборот же. В ФС все хранится с англ именами или вообще номерами, а в БД записано соответствие с именем на арабском. Показывается и отдается файл с именем из БД.
p51x вне форума Ответить с цитированием
Старый 06.09.2018, 09:09   #8
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
Так наоборот же. В ФС все хранится с англ именами или вообще номерами, а в БД записано соответствие с именем на арабском. Показывается и отдается файл с именем из БД.
походу я в лыжи обутый...
задача в чем...
пользователь со своей машины должен залить файл на сервак, у него в ФС файл на арабском, какой алгоритм?
пользователь указывает файл который нужно загрузить, но каким образом? через диалоговое окно выбирает файл с "кривым" именем, дальше что? файл заливается на сервер? на какой стадии идет генерация "правильного" имени и собственно переименования файла чтоб положить с "правильным" именем не сервер?

разжуйте для далекого порядок, алгоритм действий
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Старый 06.09.2018, 09:23   #9
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

На любом этапе. Можете на клиенте, можете на сервере сразу генерить перед записью в БД. Проблема в чем? На сервер приходит имя файла и его содержимое... что с этими данными делать - решаете вы.
p51x вне форума Ответить с цитированием
Старый 06.09.2018, 09:32   #10
spirit-ua
Форумчанин
 
Аватар для spirit-ua
 
Регистрация: 04.06.2009
Сообщений: 351
По умолчанию

Цитата:
На любом этапе. Можете на клиенте, можете на сервере сразу генерить перед записью в БД.
это понял
Цитата:
На сервер приходит имя файла и его содержимое... что с этими данными делать - решаете вы.
на сервер приходит имя файла который выбрал пользователь, верно? и приходит содержимое файла, а сервер уже генерит "правильное" и сохраняет у себя файл с "правильным" именем и в БД пишет всю эту связку с именем пришедшего и сохраненного файла, так?
Мне разрешено открывать только одну страницу - about :blank. Сперва было скучно, но потом я втянулся. Теперь у меня там живет 2 виртуальных друга, и я слышу голоса из розетки!
spirit-ua вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Файловая система Diana528 Общие вопросы C/C++ 8 14.10.2013 15:08
Файловая система Донат Общие вопросы C/C++ 3 22.04.2012 22:32
файловая система Hell Knight Общие вопросы C/C++ 2 09.12.2011 15:11
Файловая система на с++ Nikolai2010 Общие вопросы C/C++ 4 17.03.2010 13:18
Файловая система student_63 Win Api 1 12.04.2008 20:29