PHP5 gravando, recuperando e deletando imagens no banco de dados MYSQL
Publicado por vitor nascimento (última atualização em 04/07/2010)
[ Hits: 14.817 ]
Download ScriptPHP.zip (versão 2)
Neste script você vai ver uma das milhares maneiras de manipular arquivos binários no banco de dados MySQL.
Versão 2 - Enviado por vitor nascimento em 25/06/2010
Changelog: Mudança na captura do tipo de arquivo e uma pequena validação.
<?php
/**
* Description of up
*
* @author Vitor Nascimento Araújo
* @see e-mail nascimentvitor@yahoo.com
*/
if(isset ($_FILES["file"])) {
if($_FILES["file"]["tmp_name"]!= NULL) {
$conteudo = file_get_contents($_FILES["file"]["tmp_name"]); /*pegando conteudo do arquivo que foi enviado para upload
se estiver no linux preste atenção se você tem permissão ao diretorio e ao arquivo do upload
http://php.net/manual/pt_BR/reserved.variables.files.php*/
$tipo = trim(str_replace("image/", "",$_FILES["file"]["type"])); /*pega o tipo do arquivo não vo fazer validação porque o foco não é esse =)
tirando a informação /image
http://php.net/manual/en/function.ltrim.php
http://php.net/manual/en/function.str-ireplace.php*/
if($conteudo != NULL && $tipo != NULL) {
require_once "ConnectionFactory.php";//requisitando a classe de conexão
$c = new ConnectionFactory();
if($c->getConnection()) {
$c->execute("insert images values (null,'".$tipo."','".bin2hex($conteudo)."')"); /*passando o conteudo binario da imagem
* representação no formato hexadecimal
e inserindo na tabela com isso possibilita tambem fazer a restrição de imaggens iquais
http://php.net/manual/en/function.bin2hex.php*/
if(mysql_affected_rows($c->getLink()) > 0)
echo "O arquivo foi gravado!!<br/>
<a href=\"show.php\">Ver images</a>";
else
echo "Erro ao gravar o arquivo!!!";
$c->closeConnection();
}else
echo "Erro ao se conectar na base de dados";
}else
echo "Erro ao pegar conteudo da imagem";
}else
header("Location:index.php");
}else
header("Location:index.php");
exit;
eveQuery2: interação com banco de dados
Sistema Completo de Ordem de Serviços
Automatizar a recuperação de dados de uma linha de resultado do Mysql
Classe MySQLDatabase [golfinho/Elefante]
Instalação Completa e Configuração Básica do Void Linux
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Como enviar dicas ou artigos para o Viva o Linux
Como Ativar a Aceleração por GPU (ROCm) no Ollama para AMD Navi 10 (RX 5700 XT / 5600) no Gentoo
Samba 4 AD-DC 2026: Backup & Restore
Samba 4 AD-DC 2026: LAPS (Randomizando senhas locais).
Cairo Dock ainda funcional nos dias de hoje
Configuração de IP fixo via nmcli e resolução de nomes via /etc/hosts no Gentoo
Linus Torvalds e Bill Gates se encontram pela primeira vez (3)
Não consigo instalar as bibliotecas em Python pelo terminal. (2)









