[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Организация графической части сайта
Владимир55
Проектируя создание портала, я обнаружил неожиданную проблему, связанную с размещением и хранением графической информации.

На типовых CMS контент заносится с помощью визуального редактора, который размещает как текст, так и графику. При этом, если имя закачиваемого графического файла совпадает с именем уже имеющегося на сервере файла, то старый файл заменяется на новый, причем визуальный редактор о такой замене не предупреждает! Но контент-менеджер не может знать имена всех уже использующихся на сайте файлов, а потому на практике получается так, что, создав одну новую страницу, менеджер разрушил контент на другой ранее созданной странице (или даже на нескольких)!
Причем, для обнаружения этого факта надо вручную просмотреть весь сайт!

Как на практике профессионалы обходят эту проблему?
redreem
сохраняешь на сервере под сгенереным именем, например md5( realname + currentdatetime). в базу ложишь реальное имя и сгенереное.
Владимир55
Цитата
в базу ложишь реальное имя и сгенереное.

В одно поле реальное имя, в другое сгенерированное имя?

И что дальше? Как выводить?

(сам файл в базу не пишется).
redreem
ну, да, - картинки, которые тебе вставили в редакторе ты переименовываешь, там, где картинка-контент в тексте, подставляешь сгенеренное имя вместо реального (на этапе сохранения контента в базе).

выводить в браузер по сгенеренному имени конечно. а если надо качнуть файл с
оригинальным именем, то создавать временно такой же, но с реальным именем.
redreem
вообще вроде у продвинутых визивиг эта логика вшита уже по умолчанию.
Владимир55
Я тоже так думал, что логика вшита, а на практике оказалось, что ничего этого нет. Визивиг TinyMCE.
redreem
Владимир55

хз. может надо покопать серверную часть у визивигов. слабо верится, что не вшито.
sergeiss
Цитата (Владимир55 @ 2.05.2014 - 14:10)
Визивиг TinyMCE

Может я что-то не понимаю... Но как визивиг может влиять на сервер??? На сервере ты сам должен обрабатывать данные. Визивиг же работает только на клиентсткой части, т.е. в браузере.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Владимир55
Цитата
Визивиг же работает только на клиентсткой части, т.е. в браузере.

По идее так. Но чтобы разместить картинку, и чтобы визивиг мог прописать ее адрес в HTML коде, ее прежде надо закачать на сервер. И это тоже делает визивиг.

redreem
sergeiss

дык визивиг "поставляется" и серверным обработчиком всего что он там напримнимает. копал один раз тини - там довольно обширная серверная часть.
Invis1ble
md5(file_get_contents()) - можно так

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.