Ir para conteúdo

POWERED BY:

Arquivado

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

Jefferson NF

erro tamanho do arquivo

Recommended Posts

pessoal nao to entendendo uma coisa q ta acontecendo aki

eu criei um campo mediumblob no mysql,q suporta ateh 16MB,soh nao sei como nem pq qnd eu carrego um arquivo mto grande,mas q nao passa d 16MB nao grava,por exemplo, eu gravo varios arquivos .doc,soh q fui tentar gravar um aki agora q tem 7MB deu erro,o erro nao no mysql o erro eh no php

o meu codigo esta assim:

 

PHP
$vnome=$_FILES["doc"]["tmp_name"];

$vopen=fopen($vnome,"r");//r = somente leitura

$vtamanho= filesize($vnome);//filesize($_POST["doc"]);

$vdados="";

 

while(!feof($vopen)){

    $vdados.=fread($vopen,$vtamanho);

  };

$vdados=addslashes($vdados);

 

alguem consegue ver algum erro aqui,algo q nao le arquivos mto grande,o erro q esta dando eh no while,sera q por ser mto grande ele nao faz o laço?

tem alguma outra função q faça essa leitura ou eh soh o fread msm?

Compartilhar este post


Link para o post
Compartilhar em outros sites

as vzs da essa msg,qnd tentei fazer o upload d um arkivo d + d 7MB

Warning: feof(): supplied argument is not a valid stream resource in C:\Inetpub\sites\gigalinkadm\admin\documentos\caddoc2.php on line 26

 

Warning: fread(): supplied argument is not a valid stream resource in C:\Inetpub\sites\gigalinkadm\admin\documentos\caddoc2.php on line 27

 

mas qnd fui tentar fazer um upload d um arkivo de 1MB nao deu msgs d erros do php,soh deu msg q nao cadastrou (or exit 'Nao cadastrou");

Compartilhar este post


Link para o post
Compartilhar em outros sites

POST ou REQUEST dá nam mesma. REQUEST não passa de um array com todos os índices de POST e GET.

 

Se o arquivo for maior do que o definido nessas diretivas, não tem jeito, pois elas não podem ser alteradas por ini_set(). Talvez por htaccess, mas não tenho certeza.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Até onde eu saiba, não há limite de tamanho para o fread(). O limite deve ser o tempo de execução do script, que pode ser alterado com a função set_time_limit().

 

Como pode ser visto no link abaixo, as duas diretivas que citei podem ser alteradas no htaccess, não somente no php.ini:

http://br.php.net/manual/pt_BR/ini.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

vlw pela ajuda

mas olha soh eu sou novo em php,esse eh meu primeiro sistema msm,eu nao sei como faço pra mduar o php.ini,nunk fiz isso,eu tava lendo aki no manual do php.net q o valor padrao de upload_max_filesize eh 2MB,msm eu nao tendo usado essa função keria mudar esse valor pq o meu tamanho maximo sera d 16MB,ja q eu utilizo um campo mediumblob

você pode me ajudar a fazer isso?

me da algum exemplo

eu tenho q fazer essa mudanças em php.ini?

to confuso haahha

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tem que alterar as duas diretivas no php.ini: post_max_size e upload_max_filesize. É necessário alterar as duas, sendo que a primeira deve ter valor maior que a segunda (por padrão, respectivamente, valem 8M e 2M).

 

Abra o php.ini, faça as alterações e reinicie o Apache.

 

Se você for hospedar o sistema num servidor, lembre-se de que não terá acesso ao php.ini, por isso citei as modificações por meio do htaccess. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Mais detalhes:

http://br.php.net/manual/pt_BR/ini.core.ph...i.post-max-size

http://br.php.net/manual/pt_BR/ini.core.ph...ad-max-filesize

http://br.php.net/manual/pt_BR/ini.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

como eu mudo essas duas diretivas no php.ini,eu tenho q ir na pasta do php em c: e achar esse php.ini e alterar,eh +ou- isso? eu nao uso apache,nao uso nada q simule um servidor eu uso o servidor da empresa q trabalho direto,eu to no mexendo num sistema interno deles,roda direto aki

sera q por isso vuo ter q afzer via htaccess como você falou?ae msm q nao sei oq eh ahhaahah,como mudo por htaccess e como mudo por php.ini?

 

tem como eu mduar essas diretivas direto no meu codigo php,mudar no meu cadastrodedoc.php por exemplo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para poder usar o htaccess, é necessário ter o Apache (exclusivamente Apache; IIS não serve) com o módulo ReWrite habilitado.

 

Para alterar os valores das diretivas, abra o php.ini (no diretório em que você descompactou os arquivos do PHP), localize as linhas, altere seus valores e salve. Para que as alterações sejam efetivadas, é necessário reiniciar o servidor. Se sua máquina não é o servidor, você terá de pedir a reinicialização.

 

 

Não é possível alterar esses valores em tempo de execução (no script), com a função ini_set(). Só pelo php.ini, htaccess ou httpd.conf, como consta no link ao site do PHP que postei anteriormente.

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.