Ir para conteúdo

POWERED BY:

Arquivado

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

tony_lu

Upload

Recommended Posts

Ola pessoal...td bem?

 

Estou com um problema para efetuar upload de arquivos (.docx)

Todos os outros arquivos com outras extensões eu consigo efetuar o upload, porém quando tem essa extensão não consigo...

 

abaixo passo o codigo responsavel por upload:

 

<?
$caminho_absoluto = "teste";

	$id_arquivo = "comprovante"; // nome do campo do formulario
	$erro = FALSE;

	$nome_arquivo = $_FILES[$id_arquivo]['name'];
	$tamanho_arquivo = $_FILES[$id_arquivo]['size'];
	$arquivo_temporario = $_FILES[$id_arquivo]['tmp_name'];

	if (!empty ($nome_arquivo))
	{
		if ($sobrescrever == "nao" && file_exists("teste/$nome_arquivo"))
		{
			$erro = TRUE;
			echo "Arquivo $nome_arquivo já existe.";
   		}

		if (($limitar_tamanho == "nao") && ($tamanho_arquivo > $tamanho_bytes))
		{
			$erro = TRUE;
			echo "Arquivo $nome_arquivo deve ter no máximo $tamanho_bytes bytes.";
   		}

		$ext = strrchr($nome_arquivo,'.');
		if ($limitar_ext == "nao" && !in_array($ext,$extensoes_validas))
		{
			$erro = TRUE;
			echo "Extensão do arquivo $nome_arquivo inválida para upload.";
   		}

		if(move_uploaded_file($arquivo_temporario, "teste/$nome_arquivo"))
		{
			echo "<p align=center>O upload do arquivo <b>$nome_arquivo</b> foi concluido com sucesso.</p>";

		}
		else
			echo "<p align=center>O arquivo $nome_arquivo não pôde ser copiado para o servidor.</p>";
	}

?>

Alguem sabe o que pode ser??

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

kual o erro apresentado?

Na verdade nao ocorre nenhum erro especifico..ele vai para o else:

 

if(move_uploaded_file($arquivo_temporario, "teste/$nome_arquivo"))

{

echo "<p align=center>O upload do arquivo <b>$nome_arquivo</b> foi concluido com sucesso.</p>";

 

}

else

echo "<p align=center>O arquivo $nome_arquivo não pôde ser copiado para o servidor.</p>";

}

 

e aparece a mensagem O arquivo xxxxx não pôde ser copiado para o servidor.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde...

 

tony_lu, acabei de efetuar um teste local com o seu script e o mesmo funcionou corretamente...

Estou hospedando ele em um servidor meu para efetuar mais testes, poderia colocar o link?

Caso nao possa te disponibilizo um arquivo .RAR com a pagina que estou utilizando...

 

PS: Ele funcionou para qualquer tipo de arquivo, inclusive .DOCX... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<?php

	$acao = $_POST['acao'];
	if($acao=='cadastrar'){
		$caminho_absoluto = "teste";

		$id_arquivo = "imagem"; // nome do campo do formulario
		$erro = FALSE;

		$nome_arquivo = $_FILES[$id_arquivo]['name'];
		$tamanho_arquivo = $_FILES[$id_arquivo]['size'];
		$arquivo_temporario = $_FILES[$id_arquivo]['tmp_name'];

		if (!empty ($nome_arquivo))
		{
			if ($sobrescrever == "nao" && file_exists("teste/$nome_arquivo"))
			{
				$erro = TRUE;
				echo "Arquivo $nome_arquivo já existe.";
			   }

			if (($limitar_tamanho == "nao") && ($tamanho_arquivo > $tamanho_bytes))
			{
				$erro = TRUE;
				echo "Arquivo $nome_arquivo deve ter no máximo $tamanho_bytes bytes.";
			   }

			$ext = strrchr($nome_arquivo,'.');
			if ($limitar_ext == "nao" && !in_array($ext,$extensoes_validas))
			{
				$erro = TRUE;
				echo "Extensão do arquivo $nome_arquivo inválida para upload.";
			   }

			if(move_uploaded_file($arquivo_temporario, "teste/$nome_arquivo"))
			{
				echo "<p align=center>O upload do arquivo <b>$nome_arquivo</b> foi concluido com sucesso.</p>";

			}
			else
				echo "<p align=center>O arquivo $nome_arquivo não pôde ser copiado para o servidor.</p>";
		}
	}

?>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
	<title>Projeta Web - Teste de upload</title>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
	<form name="frmimagem" method="post" action="" enctype="multipart/form-data">
		<input type="file" name="imagem" value="" />
		<input type="hidden" name="acao" value="cadastrar" />
		
		<button type="submit">Upload</button>
	</form>
</body>

</html>

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala Thomazelli, beleza?

 

Obrigado pela ajuda... então...eu tenho um servidor Local e tambem na Locaweb... testei esse que você mandou e ocorre o mesmo problema... o que você acha que pode ser..?? Pode ser do servidor de hospedagem?

 

Se tiver alguma informação eu agradeço...

 

Ate mais!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entao Tony, esta estranho esse erro, pois no meu servidor (INSITE), ele funcionou corretamente.

Vou colocar o link do teste que fiz para voce ver, caso nao possa colocar o link. Aos moderadores, caso nao possa postar o link me desculpem e corrijam, obrigado.

 

 

http://www.projetaweb.com.br/teste

Compartilhar este post


Link para o post
Compartilhar em outros sites

Skyo, pelo que ele informou, o problema dele esta com relacao a upload de arquivos com a extensçao .DOCX somente.

Os demais upload ele informa que esta fazendo normalmente... :huh:

 

Estou com um problema para efetuar upload de arquivos (.docx)

Todos os outros arquivos com outras extensões eu consigo efetuar o upload, porém quando tem essa extensão não consigo...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só sei que o código ta meio estranho e com certeza tem alguma falha...

Cade o array $extensoes_validas definido?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele nao definiu nada pois esta liberado pra qualquer tipo de arquivo.

Entre no link que postei acima, o mesmo script que colei esta funcionando perfeitamente, inclusive com arquivos .DOCX

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente, o ideal seria uma validacao do tipo de arquivo que esta se tentando fazer o upload.

O estranho e que o codigo esta correto.

Desconfio que pode ser erro na permissao da pasta ou com arquivo de mesmo nome no servidor dele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Permissão de pasta afetaria outros, pode ser que seja um arquivo de nome igual sim.

Acabei de fazer um teste e subi um arquivo com o mesmo nome de outro que ja havia na pasta. O upload ocorreu normalmente... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal... entao...eu testei este sistema de upload no meu servidor local e também na Locaweb ... e ocorre o problema... funciona todas as extensões, menos a docx .... então eu testei em um outro servidor de hospedagem e funcionou... entao acho que deve ser algum recurso de servidor ... alguem saberia me dizer o que pode ser??

 

Obrigado a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal... entao...eu testei este sistema de upload no meu servidor local e também na Locaweb ... e ocorre o problema... funciona todas as extensões, menos a docx .... então eu testei em um outro servidor de hospedagem e funcionou... entao acho que deve ser algum recurso de servidor ... alguem saberia me dizer o que pode ser??

 

Obrigado a todos!

Vamos ao que pode ocorrer:

1 - O seu servidor poderia bloquear o upload de certas extensoes?

2 - Ja tentou subir um arquivo .DOC e nao .DOCX?

3 - Qual o tamanho do arquivo que esta tentando subir?

4 - O servidor poderia bloquear arquivos que contenham extensao com mais de 3 caracteres?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então...mandei um arquivo de teste... bem leve...tipo uns 50kb ... e mesmo assim não subiu... tento o (.doc) ou (.xls) e funciona perfeitamente...só o docx e não funciona mesmo ... :(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entra em contato com a LOCAWEB, e muito provavel que eles bloqueiem essa extensao.

Se sobe todos os arquivos menos este, o problema CONCERTEZA esta com a hospedagem cara...

 

Abraços...

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.