![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Honoo |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 19.12.2007 Репутация: нет Всего: нет |
Доброе время суток!
Подскажите, пожалуйста, как определить кодировку системы? Проблема в том, что сервер работает в отличной от сестемной кодировке и при выполнении file_exists() возвращается не правильный результат. Если, например, система в cp1251, а страница в utf-8 и в file_exits() передать параметр в utf-8, то функция сработает не правильно в случает, если название содержит кириллицу. Заранее благодарен. Это сообщение отредактировал(а) Honoo - 8.4.2008, 09:23 |
|||
|
||||
mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
Не нужно в названиях директорий и файлов использовать кириллицу. -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
Honoo |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 19.12.2007 Репутация: нет Всего: нет |
Но это не выход в моем случае.
На той страничке пользователь должен закачивать файл на сервер. И пользователь не вникает надо переименовывать в латиницу или не надо, он просто тупо выбирает файл и закачивает. |
|||
|
||||
mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
Honoo, в данном случае необходимо делать следующим образом:
При сохранении загруженного файла автоматически его переименовываешь (можны различные варианты: случайтое число; дата+случайное число; автоматическая транслитерация русских символов). Еще не забывай проверять на уже существование этого файла, т.к. если ты не переименовываешь файл и не проверяешь, а записываешь "как есть", то файлы с одинаковыми именами будут перезаписываться. -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
Honoo |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 19.12.2007 Репутация: нет Всего: нет |
Такой вариант я использовал в другой части проекта,
но в этой части пользователь дожен видеть имя файла, который закачал, таким какое оно было. Можно конечно задействовать базу, или рядом с закаченным и переименованным файликом хранить какой-нибудь тектовый файл с информацией о названии. В Linux можно узнать кодировку выполнив exec('local'). В windows так и не нашел пока ничего. Я хотел сделать так: 1. Узнать кодировку системы 2. Выполнять iconv() переменной, которая хранит путь к файлу. 3. И дальше уже выполнять необходиме операции file_exists(), is_file() и т.д. |
|||
|
||||
mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
http://ru.wikipedia.org/wiki/CP1251
Но всеже, ИМХО, это не лучший вариант. Добавлено через 2 минуты и 13 секунд Honoo, если так важно название файла, то храни ссылки на эти файлы в БД, отдельно название, отдельно ссылка на файл. -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |