Ir para conteúdo
Fórum Script Brasil
  • 0

Limitar tamanho de arquivo no UPLOAD !


playone

Pergunta

Olá , estou precisando do comando em PHP para limitar o tamanho dos arquivos do meu upload, os meus arquivos em PHP são

#Este é o arquivando_upload.php ( faz a vez do formulario de procura e inserção dos arquivos)

<?php
include"config.php";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Microsoft Theme" content="artsy 011">
</head>
<form action="arquivos_upload.php" method="post"  enctype="multipart/form-data">
<br>
<p align="left"><b><font face="Verdana" size="2"><i>Arquivo: <input type="file" name="foto"></i></font></b></p>
<br>
<p align="left"><b><font face="Verdana" size="2"><i><input type="submit" name="Submit" value="Enviar >>">
</i></font></b></p></td>
#Este é o arquivando_upload.php (onde estão os códigos PHP)
<?
include"config.php";
$erro = $config = array();
// Prepara a variável do arquivo
$arquivo = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
// Formulário postado... executa as ações
if($arquivo)
{
        // Gera um nome único para a imagem
        $imagem_nome = $arquivo["name"];

        // Caminho de onde a imagem ficará
        $imagem_dir = "C:\Documents and Settings\adm\Desktop\uploads/" . $imagem_nome;

        // Faz o upload da imagem
        move_uploaded_file($arquivo["tmp_name"], $imagem_dir);
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Envio de Arquivos</title>
<meta name="Microsoft Theme" content="artsy 011">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Arquivos UPLOAD</title>
</head>

<body>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<table border="0" width="100%">
  <tr>
    <td width="100%">
      <p align="center"><font face="verdana" size="3"><b>Muito bem, seu arquivo foi enviado com sucesso ! <a href="#">Voltar ao Início!</a></b></font></td>
  </tr>
</table>
</body>
</html>

Se alguém souber como seria a linha de comando para limitar o tamanho do arquivo, me ajudaria muito,

Abraços

Playone

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Pra isso você pode utilizar o $_FILES['foto']['size']

Testa se o tamanho está acima do que você quer como máximo...

Por exemplo (o tamanho é em bytes), se o máximo que você quer é 75000

if($_FILES['foto']['size'] <= 750000){
//Aqui faz o upload com o seu código...
}else{
echo "tamanho excedido!";
}

Link para o comentário
Compartilhar em outros sites

  • 0
$arquivo = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
// Formulário postado... executa as ações
if($arquivo)
{
if($_FILES['foto']['size'] <= 750000){
        // Gera um nome único para a imagem
        $imagem_nome = $arquivo["name"];

        // Caminho de onde a imagem ficará
        $imagem_dir = "C:\Documents and Settings\adm\Desktop\uploads/" . $imagem_nome;

        // Faz o upload da imagem
        move_uploaded_file($arquivo["tmp_name"], $imagem_dir);
}else{
echo "tamanho excedido!";
}
}

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo, tá dando erro :

Parse error: parse error in c:\arquivos de programas\easyphp1-8\www\arquivando_upload.php on line 56 #NA VERDADE NEM EXISTE ESSA LINHA !!!

mas se não tiver jeito, não esquenta, pois acho que o meu php já tá configurado pra aceitar no máximo 2MB arquivo, fiz uns testes e ele não deixa passar dessa tolerância, então só faltaria você ajudar fazer ele avisar quando exceder o limite, pois ele não faz isso (é lógico que não porque eu escrevi nenhum código pra isso)...

Fico no aguardo...

Playone

Editado por playone
Link para o comentário
Compartilhar em outros sites

  • 0

Acabei de testar e não tem nenhum erro, deixa eu passar o código mastigado que você deve ter feito alguma coisa errada na hora de fazer a difícil tarefa do CTRL+C/CTRL+V...

<?
include"config.php";
$erro = $config = array();
// Prepara a variável do arquivo
$arquivo = isset($_FILES["foto"]) ? $_FILES["foto"] : FALSE;
// Formulário postado... executa as ações
if($arquivo)
{
if($_FILES['foto']['size'] <= 750000){
        // Gera um nome único para a imagem
        $imagem_nome = $arquivo["name"];

        // Caminho de onde a imagem ficará
        $imagem_dir = "C:\Documents and Settings\adm\Desktop\uploads/" . $imagem_nome;

        // Faz o upload da imagem
        move_uploaded_file($arquivo["tmp_name"], $imagem_dir);

}else{
echo "tamanho excedido!";
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Envio de Arquivos</title>
<meta name="Microsoft Theme" content="artsy 011">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Arquivos UPLOAD</title>
</head>

<body>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<table border="0" width="100%">
  <tr>
    <td width="100%">
      <p align="center"><font face="verdana" size="3"><b>Muito bem, seu arquivo foi enviado com sucesso ! <a href="#">Voltar ao Início!</a></b></font></td>
  </tr>
</table>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Bom, então como diria Raul Seixas "tente outra vez", pois acabei de testar no meu servidor e está perfeito...

http://www.edgarserra.com/p1.php

Estipulei como máximo no exemplo que está no meu servidor 5000 bytes (+-5 kb)...

Tem que ver se o arquivo que você está enviando não é menor que os 750000 bytes que eu estipulei no código que você copiou... pois isso dá mais ou menos 750 kb...

Link para o comentário
Compartilhar em outros sites

  • 0

Resolvi ressucitar esse tópico ao invés de fazer um novo, porque eu seguir sua dica nele ESerra, so que ta rolando o seguinte problema:

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit in safe mode in /home/modelo/public_html/contato/upload.php on line 7

Tem alguma maneira de trabalhar com safe mode e ainda limitar o tamanho ?

Valeu!!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...