Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Не могу залить файл с русским названием / 8 сообщений из 8, страница 1 из 1
05.09.2012, 21:44:37
    #37945578
bosscs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
Здравствуйте
Код: php
1.
(move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) //в переменную $uploadfile будет входить папка и имя изображения(images/имя.jpg)


Если в $uploadfile есть русские символы, название в итоге получается
вапвапва....
Как решить проблему?
...
Рейтинг: 0 / 0
05.09.2012, 21:49:39
    #37945582
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
у страницы прописан мета-тег content-type с кодировкой?
...
Рейтинг: 0 / 0
05.09.2012, 22:43:54
    #37945624
bosscs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
Да, <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
...
Рейтинг: 0 / 0
05.09.2012, 23:23:48
    #37945661
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
bosscsназвание в итоге получается
вапвапва....Где и как смотрите название?
...
Рейтинг: 0 / 0
06.09.2012, 07:38:32
    #37945849
Hett
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
поглядите, в htaccess не прописано ли каких-нибудь addDefaultCharset отличных от utf8
...
Рейтинг: 0 / 0
08.09.2012, 14:48:43
    #37949441
bosscs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
Hett, AddDefaultCharset utf-8
vkle, название смотрю в стандартном проводнике, в той папке, куда сохраняется файл.
Вот кстати кусок кода, может дело в этом?

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
 $uploaddir = 'images/'; // это папка, в которую будет загружаться картинка
 $apend=$variants[0].'_'.$variants[1].'_'.$variants[2].'_'.date('Y-m-d_H-i-s').'_'.rand(100,1000).'.jpg'; // это имя, которое будет присвоенно изображению
 $uploadfile = "$uploaddir$apend"; // в переменную $uploadfile будет входить папка и имя изображения

     if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile))  // Здесь идет процесс загрузки изображения
     { 
         $size = getimagesize($uploadfile); // с помощью этой функции мы можем получить размер пикселей изображения
         if ($size[0] < 501 && $size[1]<501) echo "Файл загружен. $uploadfile";
         else 
         {
         echo "Размер пикселей превышает допустимые нормы (ширина не более - 100 пикселей, высота не более 100)"; 
         unlink($uploadfile); //удаление файла
         }
     } else {echo "Файл не загружен, вернитесь и попробуйте еще раз";}
     


То есть сначала в input'e я выбираю файл, жму ок, переходит на эту страницу, в которой срабатывает этот скрипт.
...
Рейтинг: 0 / 0
08.09.2012, 15:13:30
    #37949451
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
bosscsназвание смотрю в стандартном проводникеИ откуда нам знать, какой у Вас проводник является стандартным? Хотя бы, ОС указали, чтоли...

В общем то, на этом фронте все плохо. Проблема в том, что у разных операционных систем разные кодировки кириллицы в файловых системах и они по разному отображаются проводниках. На линуксах обычо utf-8, на фряхе прижилась koi8-r, в винде - cp1251, известная как windows-1251. Если хотите чтобы имя файла красиво выглядело в проводнике - используйте родную кодировку для данной операционной системы.

Однако, это решение не является ни универсальным, ни правильным. Правильно - не использовать не-латиницу в именах файлов. Можно использовать транслит, или хранить файлы под числовыми идентификаторами, а в БД (или еще где) хранить соответствие этого идентификатора и настоящего имени.
...
Рейтинг: 0 / 0
08.09.2012, 19:35:54
    #37949541
bosscs
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не могу залить файл с русским названием
Спасибо за помощь.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Не могу залить файл с русским названием / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]