Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Puxando dados de imagem BLOB do MySQL em PHP


Você pode armazenar imagens em seu banco de dados se quiser (embora não haja nada de errado em apenas armazená-las como arquivos, escolha o que for apropriado para sua situação), mas armazene os dados binários brutos em um BLOB (ou seja, não codifique com base64). Você pode incorporar os dados binários obtidos de file_get_contents diretamente na sua consulta, desde que você use a função de escape adequada (mysql_real_escape_string no seu caso) primeiro.

Quanto à saída da imagem, você pode fazê-lo do jeito que está fazendo agora, mas você terá que produzir codificado em base64 e com um data Esquema de URI como este:
echo '<img alt="embedded image" src="data:image/png;base64,' . chunk_split(base64_encode($get_pics2['img_location'])) . '">';

Observe que existem algumas vantagens e desvantagens dos dados de imagem incorporados. Algumas desvantagens importantes a serem observadas são a sobrecarga severa da codificação base64 (cerca de 33% maior que a original) e possíveis problemas de cache.