Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jeancsilva20

Upload de arquivo por diretório

Recommended Posts

Boa noite,

Gostaria de fazer upload de um arquivo para uma global $_FILES, mas sem utilizar a janela de upload, deixaria setado um diretório por default, gostaria de saber se existe alguma função especifica que faça esse tipo de upload.

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

A variável super global $_FILES é responsável por pegar requisição de upload. Se quer fazer de forma direta basta setar o diretório e o arquivo, mais terá que utilizar a função copy() pois, se o arquivo já está no servidor basta copiá-lo.

http://php.net/manual/pt_BR/function.copy.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

O sistema que estou trabalhando é preparado para receber os dados por $_FILES, no caso eu preciso de alguma forma carregar a variável com o vetor de name, type... mas os arquivos não podem vir por janela de upload, ele vão escaneados para um endereço, e feito upload para dentro de $_FILES, para não precisar alterar a outra classe, caso isso seja impossível, provavelmente vou ter que usar a copy() ou rename().

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Escaneados? Explique melhor. Escaneados onde? No computador do cliente ou no servidor?

É possível "anexar" um arquivo na requisição HTTP usando cURL.

Veja:

http://php.net/manual/pt_BR/book.curl.php

http://php.net/manual/en/class.curlfile.php

Creio que seja isso que deseja fazer

Compartilhar este post


Link para o post
Compartilhar em outros sites

vou tentar explicar melhor, :)

tenho um método em javascript que faz um Scan pela maquina do usuário para dentro de um diretório do servidor, e esse arquivo eu preciso manda-lo para dentro da variável global $_FILES, para ser recebido por outra classe, a qual eu não posso modificar, mas esse upload tem que ser automático e até agora a unica forma que achei para preencher a $_FILES é através do input type=file.

Obrigado e me desculpem pela falta de experiencia, estagiário... :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Provavelmente esse Javascript envia o arquivo ao servidor via HTTP, gerando os dados na superglobal $_FILES. Sugiro que veja o script que processa esse envio. Provavelmente lá você poderá implementar essa nova funcionalidade

Outra saída seria enviar novamente via cURL, como sugeri antes. Porém faz mais sentido fazer tudo na mesma requisição

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por AlexandreHenrique
      Olá pessoal. preciso de uma ajuda com o meu projeto de upload.
      O projeto de upload roda no IIS + Php;
      Tenho um script que ta enviando  o arquivo para o diretório correto.
      O problema é que ao tentar acessar esse arquivo via URL, o anexo não abre  e exibe a mensagem abaixo.
       

      Notei que o arquivo ao cair no DIR, ele entra sem permissões (vi em propriedades), se eu editar o mesmo alterando as permissões, ele carrega pela url do meu site.
      Quero que o arquivo enviado pelo script caia no DIR correta com as devidas permissões pra eu poder ler no navegador via URL;
       
      Já tentei resolver de toda forma mas nao tive sucesso;.
      No Apache isso é mais simples, mas no IIS ta complicado;
       
       
       
      Alguem pode me dá uma dica?
    • Por Caio Vargas
      Fala pessoa tudo tranquilo ?
      estou com um problema eu fiz um sistema de upload onde tem a marca dagua  o problema e que quando o cadastro da capa e pequena a imagem da marca dagua fica grande
      e qauando a capa e grande  a imagem da marca dagua fica pequena alguem poderia me ajudar 
    • Por mateus.andriollo
      Olá,
      Gostaria de saber se alguem pode me ajudar.
      Meu PHP esta na pasta public_html em um CPanel, quero saber se é possível armazenar em pasta fora da pasta  pública, por segurança mesmo...
      Faço isso em ASP, ai chamo a imagem por um fso, funciona mas queria saber se tem como no PHP.
    • Por DeniseAlencar
      Boar tarde pessoal estou fazendo um teste com upload de imagens gravando no banco de dados porem quando cadastro uma imagem com o nome "foto.jpg" e depois cadastro a mesma imagem com o mesmo nome, no banco de dados aparece dois registros com nomes iguais mas gostaria que os nomes fossem diferentes.
       
      E na pasta arquivos aparece uma unica imagem gostaria que quando cadastrasse fotos iguais o nome mudasse tipo foto.jpg , foto2.jpg  etc (isso automaticamente) vou postar o codigo .
      <?php $diretorio = "arquivos/"; if(!is_dir($diretorio)){ echo "Pasta $diretorio não existe";}else{ $arquivo = isset($_FILES['arquivo']) ? $_FILES['arquivo'] : FALSE; for ($controle = 0; $controle < count($arquivo['name']); $controle++){ $destino = $diretorio."/".$arquivo['name'][$controle]; $nome_foto = $arquivo['name'][$controle]; if(move_uploaded_file($arquivo['tmp_name'][$controle], $destino)){ $sql="INSERT INTO galeria (arquivo) VALUES ('$nome_foto')"; $qry = mysqli_query($conexao,$sql); echo "<head><meta HTTP-EQUIV='refresh' CONTENT='0;URL=index.php'></head>"; }else{ echo "Erro ao realizar upload"; } } } ?>  
    • Por Sapinn
      Estou precisando salvar fotos dos usuários de um sistema e não estou conseguindo fazer com OO já assisti video aulas e li algumas matérias mas sempre dá erro. Alguém sabe algum jeito de se fazer?? Eu até tentei mas fica sempre com erro, vou postar aqui talvez tenha algo que eu esteja fazendo errado.
       
      class para salvar a foto:
         private function salvarFoto($foto){         $fotos = $_FILES['foto_admin'];         $fotoDir = "imagens/fotos_admins/";         $fotoPath = $fotoDir . basename($foto['foto_admin']['name']);         $fotoTmp = $foto['foto_admin']['tmp_name'];         if(move_uploaded_file($fotoTmp, $fotoPath)):             return $fotoPath;         else:             return false;         endif;     } E estou chamando ela assim:
       $upload = $this->salvarFoto($_FILES);                 if(gettype($upload) == 'string'):                     $dados['foto_admin'] = $upload;                 endif;  
      E o erro é o seguinte: move_uploaded_file(imagens/fotos_admins/sapinn.jpg): failed to open stream: No such file or directory in
       
      Não sei o que está errado a pasta imagens/fotos_admins está dentro da minha pasta Controller
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.