Несколько фотографий для объявления
ЕСТЬ РЕШЕНИЕ
ЗАКРЫТО
Необходимо сделать возможность добавления нескольких фотографий для объявления.
#1
5 июля 2012 в 21:42
Необходимо сделать возможность добавления нескольких фотографий для объявления.
Что и где нужно подкорректировать?
Что и где нужно подкорректировать?
#2
5 июля 2012 в 22:24
В новой версии вроде бы Fuze хотел сделать, пока никто не реализовал.
#3
5 июля 2012 в 22:35
Хорошо, но все же, как при небольших знаиях можно решить этот вопрос самому, может с коде чего нибудь добавить?
Сегодня в 14:23
#4
5 июля 2012 в 23:54
какие есть варианты решения проблемы?
Где скачать?
#6
6 июля 2012 в 00:32
Что есть из бесплатного?
#7
6 июля 2012 в 18:19
Не знаю, к сожалению…
Что есть из бесплатного?
#8
6 июля 2012 в 19:18
Из бесплатного ничего нету (сам искал) как вариант купить улучшеную доску объявлений от Maxisoft'a. Скоро будет новая еще более улучшеная версия
Ждем еще пару дней, может кто-то еще свежую индейку подкинет, если никого не будет, закрываем тему, и будем ждать Релиза 2.0
#10
8 июля 2012 в 12:54
))))))))
Лично я в полном восторге! ПОДКОРРЕКТИРОВАТЬ!!!
Подкорретировать — это когда надо в заголовка синие буквы на красные поменять!
А тут полдня мудохаться придётся!!!
Лично я в полном восторге! ПОДКОРРЕКТИРОВАТЬ!!!
Подкорретировать — это когда надо в заголовка синие буквы на красные поменять!
А тут полдня мудохаться придётся!!!
Переделываю Доску объявлений под себя. Понадобилась функция, описанная в шапке. Instantcms 1.9. Вот что получилось:
Добавление:
Как реализовано:
1. Зайдем в БД сайта. Создадим в таблице `cms_board_items` поле `photos`
2. Далее находим в корне сайта /components/board/fronted.php
находим строки:
Заменяем на:
Ниже, после строк
добавляем:
Так же:
меняем на
3. Переходим в model.php
Строки
меняем на
Находим строки
И меняем на
4. Переходим в корень сайта/core/classes/
находим файл upload_photo.class.php
всю функцию uploadPhoto изменяем на
Добавление:
Как реализовано:
1. Зайдем в БД сайта. Создадим в таблице `cms_board_items` поле `photos`
ALTER TABLE `cms_board_items` ADD `photos` VARCHAR(255) NOT NULL
находим строки:
if($cat['is_photos']){ // Загружаем фото $file = $model->uploadPhoto('', $cat); } else { $file['filename'] = ''; cmsCore::addSessionMessage($_LANG['INFO_CAT_NO_PHOTO'], 'info'); }
if($cat['is_photos']){ // Загружаем фото $file = $model->uploadPhoto('', $cat, 'Filedata'); $photos=''; $i=1; foreach($_FILES as $key=>$value){ if($key!='Filedata'){ $photo=$model->uploadPhoto('', $cat, $key); if($i!=1){$photos.=', ';} $photos.=$photo['filename']; $i++; }} } else { $file['filename'] = ''; cmsCore::addSessionMessage($_LANG['INFO_CAT_NO_PHOTO'], 'info'); }
'pubdays'=>$pubdays, 'published'=>$published, 'file'=>$file['filename']
, 'photos'=>$photos
Так же:
$smarty = $inCore->initSmarty('components', 'com_board_item.tpl'); $smarty->assign('item', $item); $smarty->assign('cfg', $model->config); $smarty->assign('user_id', $inUser->id); $smarty->assign('is_admin', $inUser->is_admin); $smarty->assign('is_moder', $model->is_moderator_by_group); $smarty->display('com_board_item.tpl');
$smarty = $inCore->initSmarty('components', 'com_board_item.tpl'); $smarty->assign('item', $item); $smarty->assign('photos', $photos); $smarty->assign('cfg', $model->config); $smarty->assign('user_id', $inUser->id); $smarty->assign('is_admin', $inUser->is_admin); $smarty->assign('is_moder', $model->is_moderator_by_group); $smarty->display('com_board_item.tpl');
Строки
public function uploadPhoto($old_file = '', $cat) { // Загружаем класс загрузки фото $this->inCore->loadClass('upload_photo'); $inUploadPhoto = cmsUploadPhoto::getInstance(); // Выставляем конфигурационные параметры $inUploadPhoto->upload_dir = PATH.'/images/board/'; $inUploadPhoto->small_size_w = $cat['thumb1']; $inUploadPhoto->medium_size_w = $cat['thumb2']; $inUploadPhoto->thumbsqr = $cat['thumbsqr']; $inUploadPhoto->is_watermark = $this->config['watermark']; // Процесс загрузки фото $file = $inUploadPhoto->uploadPhoto($old_file); return $file; }
public function uploadPhoto($old_file = '', $cat, $formname) { // Загружаем класс загрузки фото $this->inCore->loadClass('upload_photo'); $inUploadPhoto = cmsUploadPhoto::getInstance(); // Выставляем конфигурационные параметры $inUploadPhoto->upload_dir = PATH.'/images/board/'; $inUploadPhoto->small_size_w = $cat['thumb1']; $inUploadPhoto->medium_size_w = $cat['thumb2']; $inUploadPhoto->thumbsqr = $cat['thumbsqr']; $inUploadPhoto->is_watermark = $this->config['watermark']; // Процесс загрузки фото $file = $inUploadPhoto->uploadPhoto($old_file, $formname); return $file; }
public function addRecord($item){ $inUser = cmsUser::getInstance(); $item = cmsCore::callEvent('ADD_BOARD_RECORD', $item); $sql = "INSERT INTO cms_board_items (category_id, user_id, obtype, title , content, formsdata, city, pubdate, pubdays, published, file, hits, ip) VALUES ({$item['category_id']}, {$item['user_id']}, '{$item['obtype']}', '{$item['title']}', '{$item['content']}', '{$item['formsdata']}', '{$item['city']}', NOW(), {$item['pubdays']}, {$item['published']}, '{$item['file']}', 0, INET_ATON('{$inUser->ip}'))"; $this->inDB->query($sql); $item_id = $this->inDB->get_last_id('cms_board_items'); return $item_id ? $item_id : false; }
public function addRecord($item){ $inUser = cmsUser::getInstance(); $item = cmsCore::callEvent('ADD_BOARD_RECORD', $item); $sql = "INSERT INTO cms_board_items (category_id, user_id, obtype, title , content, formsdata, city, pubdate, pubdays, published, file, photos, hits, ip) VALUES ({$item['category_id']}, {$item['user_id']}, '{$item['obtype']}', '{$item['title']}', '{$item['content']}', '{$item['formsdata']}', '{$item['city']}', NOW(), {$item['pubdays']}, {$item['published']}, '{$item['photos']}', 0, INET_ATON('{$inUser->ip}'))"; $this->inDB->query($sql); $item_id = $this->inDB->get_last_id('cms_board_items'); return $item_id ? $item_id : false; }
4. Переходим в корень сайта/core/classes/
находим файл upload_photo.class.php
всю функцию uploadPhoto изменяем на
public function uploadPhoto($old_file='', $formname='Filedata'){ // если каталог загрузки не определен, возвращаем ложь if (!$this->upload_dir) { return false; } $inCore = cmsCore::getInstance(); if ($_FILES[$formname]['name']){ $inCore->includeGraphics(); $realfile = $this->inDB->escape_string($_FILES[$formname]['name']); // убираем расширение файла вместе с точкой if ($ext != 'jpg' && $ext != 'jpeg' && $ext != 'gif' && $ext != 'png' && $ext != 'bmp') { return false; }
#12
8 июля 2012 в 13:21
Извиняюсь за объемное сообщение.
#13
8 июля 2012 в 13:57
CeeJay,
Молодца!!!
Молодца!!!
#14
8 июля 2012 в 18:13
За принял участие в решении моей проблемы, Огромное спасибо CeeJay