Pergunta

Estou tentando fazer upload de uma imagem para um diretório em um servidor.estou usando o tutorial encontrado em http://www.reconn.us/content/view/30/51/.

Primeiro, esse é um bom método para fazer upload de imagens usando PHP?

Segundo, também armazenarei as informações em um banco de dados MySQL.Qual é uma boa maneira de lidar com imagens que possuem o mesmo nome que o usuário carrega?Por exemplo, se um usuário fizer upload de um arquivo 'test.png' 2x seguidas, o que deverá acontecer com o segundo nome do arquivo?No script acima, ambos receberão um nome de arquivo exclusivo, mas como eu, como usuário, acessaria essa imagem novamente?Não pude simplesmente consultar porque o único nome que conheço era o nome duplicado que dei e definitivamente não sei o nome exclusivo que o servidor deu usando o tempo de upload...

Terceiro, qual é um bom tamanho máximo de arquivo para imagens?

Foi útil?

Solução

Você pode relatar o URL exclusivo de volta ao usuário após o upload para que o usuário saiba onde encontrar a imagem. Então, o primeiro teste.png pode ser http://www.example.com/images/fjdklagjsdl.jpg E o segundo pode ser http://www.example.com/images/jklfsdlkj.jpg

Você também pode fornecer algum tipo de interface para os usuários visualizar as imagens que eles enviaram. Se você exibir uma miniatura da imagem enviada ao lado do nome de arquivo exclusivo da imagem, será fácil para o usuário identificar qual imagem é qual.

Outras dicas

Este é o método que eu uso:

  1. Os usuários fazem upload de imagens

  2. O servidor salva a imagem com um nome de arquivo exclusivo (GUID ou algo assim) e armazena - ambos - o nome do arquivo gerado exclusivo e o nome do arquivo original carregado em um banco de dados

  3. As imagens estão vinculadas ao uso do original_filename, unique_filename ou chave_primária para o images mesa.

As imagens são retiradas do servidor e veiculadas usando o nome do arquivo original armazenado no banco de dados.Dessa forma, você evita chances de nomes de arquivos conflitantes e preserva o nome do arquivo original da imagem.Além disso, isso permite que você construa uma pesquisa no original_filename coluna para o usuário usar.

Com este método, nomes de arquivos exclusivos nunca precisam ser expostos ao usuário; em vez disso, são usados ​​para localizar a imagem associada a um determinado id ou original_filename na tabela 'imagens'.

Claro, se você não se importa em fornecer o nome de arquivo original à imagem quando ela for exibida, você pode simplesmente gerar um nome de arquivo exclusivo sempre que quiser armazená-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top