Ir para conteúdo

POWERED BY:

Arquivado

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

Zer0

nao sei fazer o Copy funcionar direito

Recommended Posts

seguinte, eu estou desenvolvendo um sistema de uploads e tals, e ele funciona com imagens e outros arquivos mas se o arquivo for .flv, ele não faz o upload de jeito nenhum... estou testando em localhost e remotamente (o site tah hospedado no meu pc e eu acesso na casa de amigos p/ teste)... alguem sabe como eu fa,o p/ poder faze o upload de .flv???obrigado =]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, eu nunca vi nenhuma restrição deste tipo, por ip.Já pensou que pode ser que o arquivo esteja infectado e o anti virus esta barrando? é uma opção.Agora, se o problema é realmente no php, cola a mensagem de erro e o script aqui pra gente poder te ajudar melhor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, acho q nao eh do anti-virus nao... pq os .flv sou eu q estou fazendo... e ele tbm nao dah nenhum erro... ele cadastra no BD (p/ eu poder ter um relatorio depois) mas nao copia os .flv p/ a pasta que eu escolhi... e eu acabei de ver aqui, só acontece isso com os .flv... testei um monte de arquivo e ele copiou numa boa... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

testo sim, segue o código

$extensao = strtolower(substr(strrchr($foto,'.'),0));$nomedafoto = strtolower(substr(strrchr($foto,'.'),-1));if ($extensao == ".jpg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}else if ($extensao == ".jpeg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}else if ($extensao == ".flv") {	copy($fotoTmp, "videos/".$foto);}else if ($extensao == ".gif") {	$clr['red']=255;	$clr['green']=255;	$clr['blue']=255;	gif2jpeg($fotoTmp, "fotos/".$foto, $clr);}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, vou postar aqui um exemplo de como eu faço esse tipo de verificação de extensão, da uma analisada e tenta melhorar o seu script, acho que este erro esta sendo causado pela forma como você esta fazendo a verificação.

 

// verifica se a extensão do arquivo é validaif (!eregi("^image\/(pjpeg|jpeg|jpg|png|gif|bmp)$", $arquivo["type"])) { die ("Formato de arquivo invalido"); }else {// Pega extensão do arquivopreg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext);// Gera um nome único para a imagem$imagem_nome = md5(uniqid(time())).".".$ext[1];// Caminho de onde a imagem ficará$imagem_dir = "fotos/" . $imagem_nome;// Faz o upload da imagemmove_uploaded_file($arquivo["tmp_name"], $imagem_dir);

Qualquer duvida posta ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

testo sim, segue o código

$extensao = strtolower(substr(strrchr($foto,'.'),0));$nomedafoto = strtolower(substr(strrchr($foto,'.'),-1));if ($extensao == ".jpg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}else if ($extensao == ".jpeg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}else if ($extensao == ".flv") {	copy($fotoTmp, "videos/".$foto);}else if ($extensao == ".gif") {	$clr['red']=255;	$clr['green']=255;	$clr['blue']=255;	gif2jpeg($fotoTmp, "fotos/".$foto, $clr);}
Desse jeito aí você está simplesmente testando qual a extensão da imagem, I.M.A.G.E.M, ou seja, se não for imagem não vai entrar em nenhuma dessas condições aí. Coloca um else ali no final pra dizer o que vai fazer com qualquer outra extensão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

pois eh, coloquei um else no final dos ifs e mesmo assim continua nao fazendo o upload do .flv... alguma outra sugestao??? =//

Compartilhar este post


Link para o post
Compartilhar em outros sites

vixi, testei aqui os gifs, e ele cria uma imagem com o nome da foto q eu mandei, mas eh um quadrado branco soh... =//

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, eu só tirei alguns espaços desnecessarios que tinha ai:

 

$extensao = strtolower(substr(strrchr($foto,'.'),0));$nomedafoto = strtolower(substr(strrchr($foto,'.'),-1));if ($extensao == ".jpg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}elseif ($extensao == ".jpeg") {	geraImg($fotoTmp, 640, 480, "fotos/".$foto);}elseif ($extensao == ".flv") {	copy($fotoTmp, "videos/".$foto);}elseif ($extensao == ".gif") {	$clr['red']=255;	$clr['green']=255;	$clr['blue']=255;	gif2jpeg($fotoTmp, "fotos/".$foto, $clr);}

lembre-se que elseif e else if são totalmente diferentes e podem causar erros no seus aplicativos.

 

testa ai e qualquer coisa da um toque aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera, eu estava fazendo uns testes aqui e vi que o script tá funcionando, mas p/ que ele funcione eu preciso fazer o upload a partir do HD que esta hospedado o site (eu tenho 2 hds, estava tentando fazer o upload de um p/ outro, nos testes feitos em localhost), nao testei em outro pc além de um do meu amigo (e nao funcionou), vou testar em outro pc, p/ ver se remotamente eu consigo fazer o upload... alguem sabe se isso é algum tipo de configuração???obrigado =]

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.