Upload de arquivos

Caros colegas,
Criei uma aplicação para uploads de arquivos que esta funcionando normalmente, porém quando tento fazer upload de um arquivpo maior que 50MB ele não carrega, gostaria de resolver isto ou copiar via FTP e criar o caminho na mão.

Hospedade : Locaweb
aqruivos zipados.

Desde já agradeço as repostas.

Caros, alguem pode me ajudar.

Boas editar o PHP.INI e alterar as entradas seguintes :

memory_limit = xxM
upload_max_filesize = xxM
post_max_size = xxM

xx é o valor em megas

Att

Mais alguma informação

upload_max_filesize - O tamanho máximo de um ficheiro enviado.

memory_limit - Isso define a quantidade máxima de memória em bytes que um script é permitido alocar.
Isso ajuda a evitar scripts mal escritos para comer toda a memória disponível em um servidor.
Note-se que não ter limite de memória, definir esta diretiva para -1.

post_max_size - Define o tamanho máximo dos dados postados.
Essa configuração também afeta upload de feicheiros.
Para enviar arquivos grandes, esse valor deve ser maior que upload_max_filesize.
Se o limite de memória é ativada pelo seu script configure, memory_limit também afeta envio de arquivos.
De um modo geral memory_limit, deve ser maior que post_max_size.

Att

CAro Mikec, entendo, porem o sistema esta hospedado na locaweb e não tenho acesso ao php.ini de les como fazer neste caso?

Celso aí tem de falar com eles.

Att

Olá MikeC,

Definitivamente planos de hospedagem são inviáveis para se trabalhar com o SC. Contrate um Cloud!

Olá, aproveitando o assunto do Mike C, estou há alguns dias batendo cabeça com uma aplicação de upload.

A situação é a seguinte: usando a configuração padrão consigo carregar o arquivo para um diretório específico no servidor informado no campo “subdiretório”. Até aí tudo bem. Ocorre que, ao publicar arquivos com caracteres especiais, dá erro no upload.

Para resolver esse problema criei uma rotina para remover acentos, espaços, etc. Mais resulta no seguinte erro ao fazer o move_uploaded_file:

move_uploaded_file() expects parameter 1 to be string, array given

array(1) { [0]=> string(0) “” } array(1) { [0]=> string(0) “” } string(13) “…/file/doc/78/”

$palavra = {caminhofile};
 
$palavra = preg_replace("[/^a-zA-Z0-9_/]", "", strtr($palavra, "-ABCDEFGHIJKLMNOPQRSTUVWXYZáàãâéêíóôõúüçÁÀÃÂÉÊÍÓÔÕÚÜÇ ", "_abcdefghijklmnopqrstuvwxyzaaaaeeiooouucaaaaeeiooouuc_"));
 

{caminhofile} = $palavra;


$pasta = "../file/doc/".{codPleito}."/";
//$descricao = $_FILES['caminhofile']['name'];
$descricao = $palavra;
$descricao_tmp	= $_FILES['caminhofile']['tmp_name'];
move_uploaded_file($descricao_tmp, $pasta . $descricao);

Alguma ideia sobre o que estaria acontecendo?

Procure sobre .htacess, nele vc pode redefinir varias configurações apenas para seu ambiente

Celso como disse o Agostinho pode alterar o .htacess com as seguintes entradas:

php_value upload_max_filesize xxM
php_value post_max_size xxM
php_value memory_limit xxM

Att

Não é só o PHP.ini que necessita de ajustes, o MySQL também precisa, caso contrário ele não grava se é teu caso fazer upload para o banco de dados. No MySql por exemplo:

Se estiver usando linux, edite o arquivo /etc/my.cnf e adicione a seguinte linha dentro de [mysql]:

max_allowed_packet=500M

Se estiver usando o Windows, edite o arquivo my.ini, provavelmente em algum lugar por aí, na mesma sessão [mysql]:

max_allowed_packet=500M

Ou, se preferir, execute a instrução no MySql mesmo:

  1. se você não for administrador do banco
SET SESSION max_allowed_packet=524288000;
  1. se você for administrador do banco
SET GLOBAL max_allowed_packet=524288000;
  • 500MB x 1024 x 1024 = 524288000

Então digite o seguinte comando para conferir o tamanho máximo da instrução SQL do banco:

SHOW VARIABLES LIKE 'max_allowed_packet';

CAro Mikec, onde acho este arquivo .htaccess

Você cria o arquivo chamado “.htaccess” dentro do diretório raíz do seu site/sistema.

Na root do site , se não existir cira.

Att

Tamanho máximo de arquivo limitado pelo net2ftp é 102400 kB e pelo PHP é 30M, o serviço de cloud seria o mais indicado mesmo.

Segue abaixo como contribuição um script de upload muito fácil de instalar e utilizar basta colocar no servidor e executar pelo arquivo browse.php, lembre-se de configurar o arquivo config e colocar ‘disabled’ => false, espero ter ajudado.

http://kcfinder.sunhater.com/