Upload de Imagens com Segurança
Nesse script exemplo, você faz o upload de uma imagem e o sistema verifica se o arquivo realmente é uma imagem (através do mime-type), verifica o tamanho do arquivo, verifica largura e altura, gera um nome para a imagem e salva em uma pasta escolhida por você. Você mesmo "diz" ao script o limite de tamanho, largura e altura aceitos, evitando assim, que usuários mal-intencionados de seu site, postem arquivos inválidos. Muito útil para quem tem sistema de upload de fotos de usuários e para quem está aprendendo sobre expressões regulares e uploads.
Data | Autor | Changelog | Download |
---|---|---|---|
14/01/2004 1:37pm | Alfred R. Baudisch | Versão 1.2 | Versão 1.2 |
Show de Bola seu script, tenho uma dúvida, ou uma sugestao para melhorar mais ainda esse script! Tipo, tem muito usuário principiante que nao sabe editar a foto e mudar o tamanho da mesma para o tamanho determinado no script, que normalmente acontece, pois conheço um monte de cliente meu que nao sabe, ele manda a resolucao que baixou da camera dele, que normalmente é bem definida, seria interessante, tentarmos bolar uma forma que o cara manda o tamanho que quiser e o sistema faz a modificação para diminuir essa foto, sacaram? Bom vou tentar fazer, se tiver alguém com essa solução favor me avisem,rs!Grata!
08/08/2007 4:13pm
(~17 anos atrás)
Parabéns pelo artigo!! Ficou muito bom e fácil de entender!
Agora eu preciso saber como fazer o upload de arquivos .pdf???
Agora eu preciso saber como fazer o upload de arquivos .pdf???
29/09/2006 9:21am
(~18 anos atrás)
Alfred seu sistema funcionou perfeitamente!
Mas: Pretendo utiliza-lo numa area restrita - ja pronta- onde o cliente apos se logar, subiria ele mesmo as imagens pro site , especificamente para a página produtos.php
Mas: Como fazer a página produtos.php 'chamar' essas fotos subidas por ele para o diretorio /fotos ?
Como se daria isso ?
E uma outra pergunta: Teria como conjugar fotos com um pequeno texto de descricao, tipo : o cara subiria foto e titulo ( ou referencia da foto ?)
Abraços! e Obrigada!
Mas: Pretendo utiliza-lo numa area restrita - ja pronta- onde o cliente apos se logar, subiria ele mesmo as imagens pro site , especificamente para a página produtos.php
Mas: Como fazer a página produtos.php 'chamar' essas fotos subidas por ele para o diretorio /fotos ?
Como se daria isso ?
E uma outra pergunta: Teria como conjugar fotos com um pequeno texto de descricao, tipo : o cara subiria foto e titulo ( ou referencia da foto ?)
Abraços! e Obrigada!
04/03/2006 11:57am
(~19 anos atrás)
legal o script, só que eu tava precisando de uma pequena modificação, que eu to tentando mas não dá certo...
criei uma variavel no começo do script:
$ID = $GET_HTTP_VARS['id'];
$PHOTO = $GET_HTTP_VARS['photo'];
$NOME_NOVO = $ID . $PHOTO;
Eu gostaria de em vez de criar um novo nome usando o md5, que o script trocasse o nome original pelo da variavel $NOME_NOVO...
tem como? já setei a variavel $temp para $temp = $NOME_NOVO, mas aí o arquivo fica só com a extensão...
alguem me ajuda?
criei uma variavel no começo do script:
$ID = $GET_HTTP_VARS['id'];
$PHOTO = $GET_HTTP_VARS['photo'];
$NOME_NOVO = $ID . $PHOTO;
Eu gostaria de em vez de criar um novo nome usando o md5, que o script trocasse o nome original pelo da variavel $NOME_NOVO...
tem como? já setei a variavel $temp para $temp = $NOME_NOVO, mas aí o arquivo fica só com a extensão...
alguem me ajuda?
04/11/2005 3:06am
(~19 anos atrás)
como faço pra inserir o nome da img numa tabela o MySql???
teu script funcionou, mas no fim dele eu queria colocar um INSERT INTO numa tabela o nome da img, sacou
como faria???
teu script funcionou, mas no fim dele eu queria colocar um INSERT INTO numa tabela o nome da img, sacou
como faria???
04/10/2005 4:43pm
(~19 anos atrás)
Caro Alfred e demais companheiros,
Devo dizer que foi um excelente trabalho este. Sou iniciante no mundo do PHP, contudo tenho me esforçado para aprender da melhor forma que posso e dentro em breve espero estar colaborando neste espaço.
Me ocorreu a possibilidade de utilizar de envio de um arquivo compactado para talvez um diretório temporário no servidor, onde todas as verificações feitas por este script possam ser realizadas e dessa forma viabilizar o envio de multiplos arquivos de forma segura. Compreendo que o envio desta séro de arquivos de forma compactada pode implicar em questões de segurança, por isso sugiro a pasta temporário, onde após a verificação os arquivos válidos possa ser movidos para uma localidade permante e posteriormente a pasta temporária seria limpa.
É viável este tipo de script? Acredito que seria uma ótima ferramenta para envio de multiplos arquivos.
Por favor me passem suas impressões e de previamente, peço desculpas se estiver falando alguma besteira...
Abraços,
Krausem Pinheiro
Devo dizer que foi um excelente trabalho este. Sou iniciante no mundo do PHP, contudo tenho me esforçado para aprender da melhor forma que posso e dentro em breve espero estar colaborando neste espaço.
Me ocorreu a possibilidade de utilizar de envio de um arquivo compactado para talvez um diretório temporário no servidor, onde todas as verificações feitas por este script possam ser realizadas e dessa forma viabilizar o envio de multiplos arquivos de forma segura. Compreendo que o envio desta séro de arquivos de forma compactada pode implicar em questões de segurança, por isso sugiro a pasta temporário, onde após a verificação os arquivos válidos possa ser movidos para uma localidade permante e posteriormente a pasta temporária seria limpa.
É viável este tipo de script? Acredito que seria uma ótima ferramenta para envio de multiplos arquivos.
Por favor me passem suas impressões e de previamente, peço desculpas se estiver falando alguma besteira...
Abraços,
Krausem Pinheiro
20/12/2004 6:33am
(~20 anos atrás)
Minha sugestão seria a seguinte, após fazer o upload da imagem a mesma é visualizada. Fiz um teste com o seu script e verifiquei que mudando os pixels para 2048 X 1536 e fazendo o envio de uma imagem com o mesmo pixel o script faz o upload da imagem e em seguida é visualizado a imagem com o mesmo tamanho(2048 x 1536) e a msg de envio com sucesso, onde na minha opnião não é viável... O que você acharia de incluir uma função para automaticamente criar um Thumbnail da mesma imagem com mesmo nome, porem em uma pasta diferente.
Alguem poderia me ajudar a fazer isso ??
Obs: Meu conhecimento com PHP é bem de iniciante...
Desde já agradeço