[RESOLVIDO] Upload para pastas diferentes

Prezados,

Bom dia, tenho uma aplicação onde envio arquivos para empresas, porém também tenho a necessidade de fazer o upload para mais de uma empresa.
No php puro tranquilo de fazer usando array e no SC tem como fazer?

Leandro

Olá leandroauler,

Você pode especificar em um subdiretório, tem uma opção no campo que pode dizer onde quer guardar o arquivo.

Tem um exemplo de como utilizar os subdiretórios : http://www.netmake.com.br/knowledge/article-115.html

Max,

Quanto a isso tranquilo, para um diretório vai na boa, mas o caso é se eu quiser fazer para mais de um diretório?

Com php faço usando for e array:

		for($i= 0; $i < count($params['empresa']); $i++ ){
			
			if(!is_dir("arquivos/".$params['empresa'][$i])){
				if(!mkdir("arquivos/".$params['empresa'][$i])){
					$mensagem = "Não foi possível criar o diretório";
					$erro = true;
				}
			}
			
			if(!$erro){
				
				$arquivo->setCategoria($params['categoria']);
				$arquivo->setCompetencia($params['mes']."/".$params['ano']);
				$arquivo->setDescricaoArquivo($f_name);
				$arquivo->setDestinatario($params['empresa'][$i]);
				$arquivo->setCaminhoArquivo($params['empresa'][$i]."/".(str_pad($_SESSION['codigoArq'],3, "0", STR_PAD_LEFT)).time().".".$pathInfo['extension']);
				
		    	if($arquivo->inserir()) {
		
		    		move_uploaded_file($f_tmp, "arquivos/".$params['empresa'][$i]."/".(str_pad($_SESSION['codigoArq'],3, "0", STR_PAD_LEFT)).time().".".$pathInfo['extension']);
		    		$mensagem = "Arquivo enviado com sucesso";
		    		    		
		    	} else {
		    		
		    		$mensagem = "Não foi possível enviar o arquivo";
		    		
		    	}
			}

E no SC, tem como?

Pessoal,

Aguem sabe se tenho como enviar um arquivo para mais de uma pasta no SC?

Leandro

Eu tive uma necessidade parecida mais o problema era fazer upload com multiplos arquivos, acabei de abrir um tópico porque agora o script esta se comportando de maneira estranha porque alterei algumas config do servidor, na verdade o SC é totalmente engessado no quesito upload de arquivos, se eu fosse você fazia um script em uma app blank mesmo.

Galera,

Consegui resolver em parte esse problema, estou usando o seguinte código para fazer o upload:

$pasta = "../_lib/file/doc"; for($i=0; $i<count($_POST['destinatario']); $i++) { $caminhoarquivo = $_POST['destinatario'][$i]."/".$descricao; $sql = mysql_query("INSERT INTO tbl_arquivo VALUES (NULL,'$categoria', '$lido', '$ip', now(),'$descricao', '".$_POST['destinatario'][$i]."', '$remetente' , '$competencia','$data_referencia','$usuario', '$caminhoarquivo','$comentarios')"); move_uploaded_file($descricao_tmp, $pasta."/".$_POST['destinatario'][$i]."/".$descricao); }
Quanto a inserir no banco está tranquilo, funcionando perfeitamente, porém quando faço o move_uploaded_file, só é feito o upload para uma pasta.
Alguém tem alguma idéia de como resolver isso?

Leandro

Galera,

Consegui resolver da seguinte maneira:

$destinatario = $_POST['destinatario']; $descricao = $_FILES['arquivo']['name']; $descricao_tmp = $_FILES['arquivo']['tmp_name']; $pasta = "arquivos"; move_uploaded_file($descricao_tmp, $pasta."/".$descricao); for($i=0; $i<count($_POST['destinatario']); $i++){ if (file_exists($pasta."/".$descricao)) { copy($pasta."/".$descricao,$pasta."/".$_POST['destinatario'][$i]."/".$descricao); } else { print "O arquivo $descricao não existe"; }

Valeu,

Leandro Auler