
![]() |
Здравствуйте Гость ( Вход | Регистрация ) |
|
|
|
![]() ![]() ![]() |
![]() |
۩
Дата
|
![]() Новичок ![]() Профиль Группа: Пользователь Сообщений: 15 Пользователь №: 39086 На форуме: Карма: ![]() |
Вот рабочий код:
$upload_filename = iconv('utf-8', 'cp1251', $upload_filename); @move_uploaded_file($_FILES[$image_fieldname]['tmp_name'], $upload_filename) or handle_error("возникла проблема сохранения вашего изобразения " . "в его постоянном месте.", "ошибка, связанная с правами доступа при перемещении " . "файла в {$upload_filename}"); В функции iconv сказано, что первый параметр входящий, а второй исходящий. Так вот, у меня на самом деле кодировка не 'ср1251' как мы раньше указывали! Вот, эти параметры я поменял местами. Ну и упростил третий параметр до такой формы: $upload_filename. А изначально была вот: $_FILES[$upload_filename]['name']); |
![]() |
۩
Дата
|
![]() Новичок ![]() Профиль Группа: Пользователь Сообщений: 15 Пользователь №: 39086 На форуме: Карма: ![]() |
Теперь все файлы сохраняются на диске в нормальной кодировке, вот пример: Ольга Ивановна.JPG
|
![]() |
۩
Дата
|
![]() Новичок ![]() Профиль Группа: Пользователь Сообщений: 15 Пользователь №: 39086 На форуме: Карма: ![]() |
Спасибо за сотрудничество! )))) Помогли мне разобраться с проблемой.
|
![]() |
|
![]() ![]() Глухой нуб ![]() ![]() ![]() ![]() ![]() ![]() Профиль Группа: Администратор ![]() Сообщений: 17423 Пользователь №: 6543 На форуме: Карма: 327 Трезвый : 14 лет, 2 месяца, 28 дней ![]() |
Ну и зря. Кириллица в назвниях файлов, это очень плохо. Многие nix-овские файловые системы их обрабатывют некорректно. В дальнейшем могут возникнуть проблемы, допустим с теми же бэкапами. Это же многобайтная кодировка, не стоит эксперементировать.
И уж тем более с пробелми. -------------------- Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.
Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право. Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках. ![]() |
![]() |
۩
Дата
|
![]() Новичок ![]() Профиль Группа: Пользователь Сообщений: 15 Пользователь №: 39086 На форуме: Карма: ![]() |
Ну ясно. Не в этом дело. Я никогда не называю файлы русскими именами. Тут, просто нужно было решить эту проблему и это получилось. Но Вы правы, проблемы начали появляться в других местах.)) Поэтому, мне придётся отказаться от принятия такого решения.
|
![]() |
|||
![]() ![]() ★___★yvsik.ru★___★ ![]() ![]() ![]() ![]() ![]() ![]() Профиль Журнал Группа: Сын полка Сообщений: 4105 Пользователь №: 25563 На форуме: Карма: 63 Трезвый : 54 года, 21 день ![]() |
пока читал ) только это в голове и прозвучало, а почему собственно никто не задался таким вопросом, что ТС так и делает файлы обзывает кирилическими буквами)) , и все же нашелся ответ который я хотел задать
![]() от себя продолжу, подавляющее большинство серверов, работают под ОС линукс, и никсов, видовские никто во внимание не принимает. Чуток отступление, почему так? а потому из-за совместимости версий, винда таскает за собой челый ворох ненужной инфы, от старых систем так она устроена изначально, посему как бы бил не пыжился, она на ИМХО взгляд доживает последние дни, хоть и выпустила новые системы под телефоны и еже с ними, в этом случае они такие требуют ресурсов.... и ТД... теперь про тему, кирилических буков в отличии от латинницы гораздо больше и воспринимаются они ОС - сервером, не совсем корректно, как мы это делаем, и её приходится все это приводит к удобно-читаемому виду потому и перкодирует твои символы как ей удобно, осталось задаться вопросом, а накой тебе эти танцы с бубном, все это туда сюда перекодировать, наверное чтоб-БИЛО Ето наверное единственный случай -------------------- «Гнусное свойство карликовых умов приписывать
________________!свое духовное убожество другим!» ___О) как-же он прав=>__________________ © Оноре де Бальзак. отличный хост(рекомендую !! ) My MVC-CMV |
||
![]() |
|
![]() Новичок ![]() Профиль Группа: Пользователь Сообщений: 15 Пользователь №: 39377 На форуме: Карма: ![]() |
Киррилица в названии файла это мина замедленного действия. Стоит сделать хостеру какието телодвижения или вам копировать с хоста по фтп и результат будет непредсказуемый. Лучьший выход выработать привычку именовать файлы латиницей и не выделываться
|
![]() Unregistered ![]() |
У меня на сервере кодировка utf-8 а винда я так понимаю кодирует в cp1251
Вот мой кусок кода который нормально преобразует одну кодировку в другую <?php if($_SERVER['REQUEST_METHOD']=='POST'){ print_r($_FILES); $tmp = $_FILES['user_file']['tmp_name']; $name = (string)$_FILES['user_file']['name']; $name1=iconv('utf-8', 'cp1251', $name); echo $name; move_uploaded_file($tmp, 'upload/'.$name1); } ?> |
|
![]() |
![]() ![]() ![]() |