Ir para conteúdo

POWERED BY:

Arquivado

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

sarinhapaes

[Resolvido] Erro função copy

Recommended Posts

Gente, socorro!

 

Estou fazendo um cadastro que envia fotos. As fotos vão pro servidor, vão pro banco de dados, aparece tudo direitinho pro usuário ver. Porém dá esse erro:

 

Warning: copy(fotos/carro1.jpg) [function.copy]: failed to open stream: Permission denied in /home/alexandr/public_html/teste/veiculos/cadVeiculos.php on line 128

 

Mudei a permissão deste arquivo para 777 e ainda continua dando erro. Alguém poderia me ajudar? Obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

a pouco tempo tive que fazer algo parecido,

vejo se isso serve para você.

caso não consiga continue postando aqui.

 


<?php
		$FOTO = $_FILES['foto'];
        $FOTO_TEMPORARIA = $_FILES['foto']['tmp_name'];
	    //upload de Fichao de Teste
        //@param: só aceita PDF
        //@param: um unico arquivo
            @$caminho = "RELATORIOS/FOTOS/";
            //resgata o nome do arquivo
            $extensao = $FOTO['name'];
            //quebra o nome em string para pegar o tipo de arquivo
            $vetor = explode(".", $extensao);
            //transforma a string em array
            $valor = array_reverse($vetor);
             //pegas posiçõe do array
            $extensao2 = $valor[0];
            //verifica a extensao só sendo @param PFD,pdf
            if(!preg_match("/jpg|jpeg|bmp/", strtolower($extensao2))){
                $msg.="a imagem enviada deve ser ser de origem .JPG<br/>";
            }else{
                //se for @param: jpg|jpeg|bmp move o arquivo para pasta
                move_uploaded_file($FOTO_TEMPORARIA, "$caminho/$extensao")
				$msg.="copia efetuada com sucesso!";
            }
        }	
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudei a permissão deste arquivo para 777 e ainda continua dando erro. Alguém poderia me ajudar? Obrigada!

Mude também as permissões da pasta que contém o arquivo e da pasta para a qual pretende copiá-lo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mudei a permissão das pastas para 777 e ainda continua dando erro. Demora um tempo pra normaliza ou tem algum erro ainda?

 

Gente, alguém tem idéia do que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

poste os arredores da linha 128 (2 acima, a propria, e 2 abaixo.. )

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bruno, este é o código:

 if(!empty($_FILES['foto1']['name'])) {
$foto1 = $_FILES['foto1']["name"];
$filetype = $_FILES['foto1']["type"];

if($filetype !='image/jpeg' and $filetype !='image/jpg' and $filetype !='image/pjpeg'){ // se não é JPG dá msg de erro
echo "<script>alert('Tipo de arquivo não permitido!');</script>";
} else { //senão, copia
copy($_FILES['foto1']["tmp_name"],"fotos/".$_FILES['foto1']["name"]);
$campos .= ", foto1";
$valores .= ", '$foto1'";
echo "<script>alert('Arquivo enviado com sucesso!');</script>";
 }

}

me esqueci de dizer... a linha 128 é a copy($_FILES['foto1']["tmp_name"],"fotos/".$_FILES['foto1']["name"]);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente utilizar a função move_uploaded_file(), ao invés da copy().

Os parâmetros são os mesmos, apenas altere o nome da função.

 

Sobre o chmod, não: a mudança ocorre na hora. Aconselho estudo sobre o assunto. Está diretamente relacionado à segurança.

Melhor tutorial de chmod que já vi.

 

Até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Gente, deu certo, parou de dar o erro, mas se nao for abusar muito de vocês só mais uma dúvida, eu não entendi qual a diferença das duas funções.... brigadinha pela paciencia...

Compartilhar este post


Link para o post
Compartilhar em outros sites

O copy é destinado para cópias gerais de arquivos dentro do sistema. O move_uploaded_file aproveita as solicitações de formulários para realizar as cópias.

Não muda muita coisa, mas é como usar um garfo pra misturar nescau no leite, entendeu?

 

Até mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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