Здравствуйте!
Помогите, пожалуйста с проблемой!
При помощи php на сервере создаю папку и копирую в нее файлы. Но почему-то папка появляется не сразу и файл, соответственно. Причем если имя файла на русском - на сервере кроказябное имя из иероглифов и файл нечитаем. С латиницей появляются нормально (файлы картинки), но на странице эти подключенные файлы не отображаются!
Помогите! Голову всю сломала. На другом сервере скрипт копирования работал нормально!
AllesKlar
7.04.2014 - 15:45
Цитата |
Причем если имя файла на русском |
Забудь об этом зле.
Имена файлов должны быть на латинице.
Если ты хочешь русские названия, то хранишь их (русские названия) в базе и выдаешь это в браузер, а физически файлы должны быть в латинице.
Почему? Потому что очень часто будет случаться то, что у тебя случилось.
Зависит от настроек сервера + настроек клиента (например, ftp клиент не сможет прочитать кирилицу, и скачанные файлы будут опятьже кракозябрами)
Если же ты принимаешь файлы от пользователя, то тоже самое.
$_FILES['userfile']['name'] пишешь в базу, а сам файл сохраняешь под кошерным именем.
Цитата |
но на странице эти подключенные файлы не отображаются! |
Куда подключенные?
Как они должны отображаться?
_____________
[продано копирайтерам]
При помощи формы создаю новую единицу оборудования (проектор, телевизор и т.д.). В этой форме как-раз у меня возможность подключить изображение данной единицы оборудования (основное) и ее дополнительные фото. Когда создается эта единица не отображаются фото даже если названия файла латиницей. Папки странно очень создаются - появляются только если перегрузить ftp или закинуть на ftp обычным способом файлик. Прошу подкиньте мыслишку.
В базе имя файла сохраняется верно - как русское, так и на латинице. Пути к папкам изображений тоже перепроверяла - формируются правильно!!!
В логе ошибок на сервере наткнулась на следующую фразу:
"65534" [Mon Apr 7 15:41:37 2014] [error] (2)No such file or directory: access to ISO-8859-1, US-ASCII, UTF-8; Q=0.8, ISO-8859-15; Q=0.8, ISO-10646-UCS-2; Q=0.6, UTF-16; Q=0.6 failed for 149.27.70.181, reason: Can't set requested charset
Может это связано с безопасным режимом на хостинге?
"Но почему-то папка появляется не сразу и файл, соответственно."
А как ты проверяешь, что не сразу появляется после запуска скрипта? Вот этот момент поподробнее.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Для проверки я написала коротенькую php которая создает папку. Кинула ее по ftp через total на хостинг. Запустила через браузер. Пошла в total - на хостинге новой папки нет. Помудрила еще с php. Заменяю предыдущий php - и БАЦ - папка появляется. СПАСИБО!
Чтобы через файловый менеджер увидеть созданную папку, то надо обновить страницу через F5 (по крайней мере так у FAR). Иначе тебе выводится старый КЕШ, в котором отсутствует эта папка. Папка и файл созданы сразу, как обработался скрипт (моментом). Так что беда именно в кешированных данных.
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Как быть в такой ситуации. Мне надо двигаться дальше. Так как боюсь что при переносе на хостинг еще возникнут проблемы. Просто дайте совет, пожалуйста! Почему он не видит картинок тогда?
Без пробелов и без русских букв и без спец.символов, запрещенных файловой системой. Дальше всё будет работать.
Учесть, что мы часть проблем разобрали, скажи, что за проблемы остались?
_____________
Обучаю веб-программированию качественно и не дорого:
http://school-php.comФрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.