|
|
|
| Пишу блог. Хочу, чтобы когда набираешь статью, можно было прикреплять сразу картинки. Как бы так сделать, чтобы можно было много картинок прикреплять? И желательно, чтоб они сразу появлялись в коде текста.
Идеальный вариант такой: нажимаю кнопку "вставить картинку", выбираю картинку со своего компа, она куда-то там прописывается, но мне не важно куда. При этом, в код статьи прописывается тэг img.
Блин, тут всплывает проблема, что заранее может быть не известно имя картинки на сервере...
Короче, кто-нибудь писал такую прогу, где и текст и картинки одновременно можно качнуть на сервер? И как вы это делали? | |
|
|
|
|
|
|
|
для: SHAman
(27.02.2007 в 21:28)
| | Я делал похожую систему. ПОд полем для ввода текста кнопка "Добавить картинку"; при нажатии динамически создается input type=file с порядковым номером (каждое нажатие на кнопку добавляет input), а в тексте вручную нужно было писать псевдо-тег [картинка1]. Хотя вставку в текст можно и автоматизировать по onChange input'а (не уверен, что именно это событие). | |
|
|
|
|
|
|
|
для: Киналь
(27.02.2007 в 22:55)
| | Не подойдет. Во-первых, картинки на сервере имеет смысл переименовывать, чтобы не было ситуаций, когда картинка с таким именем уже существует.
Во-вторых, псевдо-тэг можно заставить пользователя писать, конечно, но это не даст ему возможности редактировать картинку. То есть, задать ей обтекание, поля, размер, альт и т.д. Но спасибо за реакцию. Я тоже думал о таком подходе.
В результате, пришел к выводу, что либо использовать Ajax, который посылает картинку при загрузке на сервер, возвращает ее новое имя и это имя вставляется в мой редактор, который эту картинку тут же берет с сервера, отображает и с ней можно работать силами редактора.
Либо был второй вариант: нажимаешь "Добавить картинку", вся форма отправляется на сервер, картинка складируется, в текст сообщения добавляется что нужно и страничка возвращается, но с обновленным текстом. Этот подход мне не понравился тем, что приходилось бы перезагружать страницу каждый раз, как прикрепляю картинку.
В результате, пришел к выводу, что лучше сделать две отдельные системы. ОДна для текста, другая - для картинок. В результате, я могу быстро и очень эффективно управлять своими картинками и текстами, но при их сопряжении возникают небольшие трудности. Но я постараюсь свести их к минимуму. Вот. Как доделаю - покажу. | |
|
|
|
|
|
|
|
для: SHAman
(01.03.2007 в 13:49)
| | Зачем велосипед изобретать? :)
Посмотрите любой wysiwyg он-лайн редактор... Там картинки в текст вставляются через обычное диалоговое окно, которое позволяет выбрать из уже загруженных изображений, либо в этом же окне загрузить новое... | |
|
|
|
|
|
|
|
для: SHAman
(01.03.2007 в 13:49)
| | Воля, конечно, ваша, но в защиту своего варианта все-таки выскажусь) Из академического, так сказать, интереса=)
>Во-первых, картинки на сервере имеет смысл переименовывать, чтобы не было ситуаций, когда картинка с таким именем уже существует.
Дык, когда на сервер пришел текст с картинками, первым делом переименовывеам картинки, а уже вторым - заменяем [картинка1] на [img="image_010307456721.jpg"]
>Во-вторых, псевдо-тэг можно заставить пользователя писать, конечно, но это не даст ему возможности редактировать картинку. То есть, задать ей обтекание, поля, размер, альт и т.д.
У псевдо-тегов тоже бывают аргументы) [картинка1 поля=5 шириа=450 высота=200] =)
======
Если не возражаете, могу предложить один из вариантов "сведения" картинок и текста. Делаете отдельный фрейм, в который постранично выводите превьюшки всех доступных картинок - хоть 80х80 размером. В основном фрейме добавляете маленькую формочку с полями "Имя файла с картинкой", "размер", "поля" и т.д., причем поле "Имя файла" заполняется по клику на нужной картинке. Когда формочка заполнена, нажимаем ОК, и в поле ввода текста вставляется сформированный тег. | |
|
|
|
|
|
|
|
для: Киналь
(01.03.2007 в 15:19)
| | : ) Я просто использую WYSIWYG редактор tinymce. Который не поддерживает загрузку картинок на сервер, а поддерживает только вставку с сервера. Кроме того, он берет все картинки из одной директории, а у меня директорий столько, сколько пользователей.
Думал я и о фреймах:) В принципе, я сделал то же самое, но без фреймов. Вместо фрейма, я открываю маленькое окошко дополнительное, в котором список доступных картинок, поле с адресом и просмотр. Нажимаешь на картинку - она показывается, а в поле появляется адрес для копирования.
Ваш метод мне тоже нравится. Возможно, потом переделаю на него. Пока что попробуем по-моему. Если будет удобно, оставлю. Если нет - сделаю наверно вообще с перезагрузкой страницы... Даже на мэйл.ру так делают, когда к письму файл аттачишь. Посмотрел на ucoz.ru как загружаются картинки - там дают грузить только по 3. В общем, разберемся.
Спасибо за вариант и беседу : ) | |
|
|
|
|
|
|
|
для: SHAman
(01.03.2007 в 18:31)
| | Всегда пожалуйста) Успехов) | |
|
|
|
|