Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.05.2011, 11:09
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Массовая загрузка изображений
Существует текстовая форма данные из нее попадают в базу данных. Хочу к этой форме прикрутить Uploadify для массовой загрузки картинок. Поставил это хозяйство на ноги, а теперь думаю, они работают друг от друга не зависимо т.е. загрузка файла осуществляется без создания в базе записи.

Вопрос вот в чем - Как вернуть обратно из сценария php информацию о папке в которую записывались изображения.

Дело в том что я хочу сделать чтобы для каждой статьи было свой набор изображений в отдельной папки.

И еще вопрос как лучше хранить изображение в отдельной папки или в общей. И если в одной то как избежать одинаковых названий файла. И как передать имена файлов которые загружались?

Если не сложно разжуйте тему! А кому сложно просто киньте ссылку на что-то подобное.
Ответить с цитированием
  #2 (permalink)  
Старый 15.05.2011, 15:30
Новичок на форуме
Отправить личное сообщение для Leopardoff Посмотреть профиль Найти все сообщения от Leopardoff
 
Регистрация: 13.05.2011
Сообщений: 7

Могу сказать, что хранить можно как в разных папках, так и в одной. Сгенерировать уникальную строку в php можно так:
$str = md5(time());
Вернуть информацию о паке? Если вернуть именно путь к папке, то просто выведи её echo'м, если из скрипта больше ничего не возвращается, или создавай json или xml.
Ответить с цитированием
  #3 (permalink)  
Старый 15.05.2011, 17:22
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

Если не трудно можете описать кусок кода. Я так понимаю необходимо в сценарии php отправляется имя файла который он обрабатывает, а сама страница формы должна получать элемент массива js и в виде название того же файла добавлять его в массив после чего записывать в скрытое поле формы через запитую, чтобы в дальнейшем все эти данные можно было отправить в базу данных. Это вариант если все файлы хранятся в одной папке. Логика правильна? Или лучше создать Базу данных только изображений в которую будет помещаться имя изображения id и id статьи! я не могу понять просто как лучше будет и как передать информацию при помощи json хотя бы простой пример типа на php кусок что должно быть и на странице формы какой js, а доработаю надеюсь что сам. Смотрел в интернете статьи по этим темам писатели там такие же как все в кучу. откуда все это берется не понятно.
Ответить с цитированием
  #4 (permalink)  
Старый 15.05.2011, 23:02
Аспирант
Отправить личное сообщение для ybiza Посмотреть профиль Найти все сообщения от ybiza
 
Регистрация: 01.11.2010
Сообщений: 40

<script language='JavaScript' type='text/javascript'>
		$(document).ready(function() {
		  $('#file_upload').uploadify({
			'uploader'  : 'photo/uploadify.swf',
			'script'    : 'photo/uploadify.php',
			'cancelImg' : 'photo/cancel.png',
			'folder'    : 'photo/uploads',
			'fileExt'     : '*.jpg;*.gif;*.png',
			'fileDesc'    : 'Image Files',
			'removeCompleted' : false,
			'multi'     : true,
			'wmode'       : 'transparent',
			'hideButton'  : true,
			[B]'onOpen'      : function(event,ID,fileObj) {
     		$('#uploader_message').text('The upload is beginning for ' + fileObj.name);
    		}[/B]
		  });
		});
		</script>


Данный кусок выделенный жирным шрифтом выводит имя файла который уже загружен. Ниже приведу code php обработчика:

if (!empty($_FILES)) {
	$tempFile = $_FILES['Filedata']['tmp_name'];
	
	[B]$dateName[/B] = date("mdyHis").'_'.mt_rand ().'.jpg';
	
	$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
	$targetFile =  str_replace('//','/',$targetPath).$dateName;
	
	$targetPath1 = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/tmpl/';
	$targetFile1 =  str_replace('//','/',$targetPath1).$dateName;
	
	 $fileTypes  = str_replace('*.','',$_REQUEST['fileext']);
	 $fileTypes  = str_replace(';','|',$fileTypes);
	 $typesArray = split('\|',$fileTypes);
	 $fileParts  = pathinfo($_FILES['Filedata']['name']);
	
	 if (in_array($fileParts['extension'],$typesArray)) {
		// Uncomment the following line if you want to make the directory if it doesn't exist
		mkdir(str_replace('//','/',$targetPath), 0755, true);
		mkdir(str_replace('//','/',$targetPath1), 0755, true);
		
		
		crop($tempFile, $targetFile1, $crop = 'square',$percent = false);
		resize($targetFile1, $targetFile1, 50, 50, $percent = false);
		
		move_uploaded_file($tempFile,$targetFile);
		
		echo $targetFile;	
		echo str_replace($_SERVER['DOCUMENT_ROOT'],'',$targetFile);
	 } else {
	 	echo 'Invalid file type.';
	 }
}


Мне необходимо вывести переменную выделенную жирным на клиента и создать массив из имен всех файлов после чего масив поместить в скрытый импут формы. напишите как это сделать! Мне необходимо решение ото понять ничего не могу
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прокрутка изображений gen552 Элементы интерфейса 6 01.04.2011 13:11
Загрузка изображений в форме обратной связи online Элементы интерфейса 3 15.02.2011 15:49
JQuery + Ajax = загрузка изображений jokerbot jQuery 0 06.12.2009 15:10
загрузка изображений uncher4 jQuery 3 15.11.2009 15:57
onLoad до изображений в IE vasa_c Events/DOM/Window 2 28.04.2009 13:09