Armazenando Arquivos Binários no MySQL
dados.php
copiar.php
Links
http://www.phpbrasil.com
http://www.php.net
Autor: Bruno Rodrigues Silva
Contatos: brunors@spep.com.br
ICQ: 112252249
Estudante de Ciência da Computação – Faculdades Integradas de Caratinga/MG
07/04/2002
<?php include 'config.inc'; $conteudo=addslashes(fread(fopen($arq, "r"), filesize($arq))); /* A função addslashes ( ) faz o escape de aspas simples, aspas duplas, de barras invertidas e NULLs com barras invertidas, pois esses são os caracteres que precisam ser "escapados" em consultas de banco de dados. */ //Armazena no banco de dados $con=mysql_connect ($srv, $usr, $snh) or print mysql_error(); $db=mysql_select_db ($banco, $con) or print mysql_error(); $sql="insert into arquivos (nome, tipo, tamanho, dados) values ('$arq_name', '$arq_type', '$arq_size', '$conteudo')"; $exec=mysql_query ($sql, $con) or print mysql_error(); mysql_close ($con); header ("Location: $url/principal.php"); /* direciona para o formulário */ ?>
copiar.php
<?php include 'config.inc'; $con=mysql_connect ($srv, $usr, $snh) or print mysql_error(); $db=mysql_select_db ($banco, $con) or print mysql_error(); $sql="select * from arquivos where (nome='$arquivo')"; $exec=mysql_query($sql, $con) or print mysql_error(); $vet=mysql_fetch_array($exec); $arq_nome=$vet["nome"]; $arq_tipo=$vet["tipo"]; $arq_tamanho=$vet["tamanho"]; $arq_dados=$vet["dados"]; header("Content-type: $arq_tipo"); header("Content-length: $arq_tamanho"); header("Content-Disposition: attachment; filename=$arq_nome"); header("Content-Description: PHP Generated Data"); echo $arq_dados; mysql_close($con); ?>
Links
http://www.phpbrasil.com
http://www.php.net
Autor: Bruno Rodrigues Silva
Contatos: brunors@spep.com.br
ICQ: 112252249
Estudante de Ciência da Computação – Faculdades Integradas de Caratinga/MG
07/04/2002
NAo entendo muito de php e mysql, mas creio que segui os passo direitin, o que acontece é que quando vai mostrar a imagem, só mostra os hexadecimais dela e nao a imagem propriamente dita, o que será que está acontecendo
QUero que mostre as imagens nao os hexadecimais dela..
Obrigado
QUero que mostre as imagens nao os hexadecimais dela..
Obrigado
19/08/2006 7:30am
(~18 anos atrás)
Caro Roberto,
Eu utilizo o mesmo esquema de armazenamento de informação do bruno, porem deve-se renomear esse arquivo .ini para .php, assim, teóricamente, ninguém conseguirá acessar suas informações do BD.
Att
Thiago Teixeira
Eu utilizo o mesmo esquema de armazenamento de informação do bruno, porem deve-se renomear esse arquivo .ini para .php, assim, teóricamente, ninguém conseguirá acessar suas informações do BD.
Att
Thiago Teixeira
22/05/2006 5:56am
(~18 anos atrás)
estou usando o (Armazenando Arquivos Binários no MySQL) para armazenar imagem, como faço para abrir as fotos dendro do site. e para um pagina de noticias eu quero inserir o texto com a imagem que esta la! grato
07/04/2006 12:59pm
(~18 anos atrás)
Olá Bruno, dei uma olhada no seu artigo publicado no PHPBrasil ! muito bom ! No entanto tenho um problema. O processo de inserir o registro esta normal, mas quanto faço uma solicitação para baixar o arquivo, é mostrado naquela tela de download o Nome do Arquivo : Tipo do Arquivo, mas o Tamanho vem zerado, ou seja, quando faço o download, o arquivo vem com tamanho Zero .
Sabe porque acontece isso ?
Valeu
Sabe porque acontece isso ?
Valeu
17/03/2006 5:03am
(~18 anos atrás)
Estou tendo esse erro, na hora que clico no nome do arquivo para baixar:
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 20
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 21
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 22
GIF89aÔ<æ¾Ìݘ·gPm[;MC333¬µ½Zq–ÎÝä!M?¤¯µ !o:)‹p8ßæ槪¡]PF»ÆÊ„ŠŒ™™™Yl†MTn4:<ÄxPÝæïROD7^’¬Ìt¼Ìç’?~µ½¼MJ!ÿ NETSCAPE2.0!ù,ÿ,Ô<ÿ€ ‚ƒ„…†‡ˆ‰Š‹Œ?Ž?? D“”•–—˜™š›œ?žŸ ¡¢—I¥¦§¨¥™©®22]²³´µ¶´°°s»®¾dÁÂd<ÅÆÇÈÅ¿¾vÍvËÀÃYÓÇÁλs®®Îv®Ø»±³¹®©I‘çèéêë샣ïœíŠðñò‹•å¨Ÿù¥¯á·»ä(#[/h¿†%[¸p˜CaÓ"JÌÌ7n¦.:ÓömN3SD’‰B‡ƒJ†Ä§…/ƒø¤
......
.....
.....
.....
.....
.....
Como posso resolver isso??
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 20
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 21
Warning: Cannot modify header information - headers already sent by (output started at /home/rgarber/www/noticias/blob/copiar.php:6) in /home/rgarber/www/noticias/blob/copiar.php on line 22
GIF89aÔ<æ¾Ìݘ·gPm[;MC333¬µ½Zq–ÎÝä!M?¤¯µ !o:)‹p8ßæ槪¡]PF»ÆÊ„ŠŒ™™™Yl†MTn4:<ÄxPÝæïROD7^’¬Ìt¼Ìç’?~µ½¼MJ!ÿ NETSCAPE2.0!ù,ÿ,Ô<ÿ€ ‚ƒ„…†‡ˆ‰Š‹Œ?Ž?? D“”•–—˜™š›œ?žŸ ¡¢—I¥¦§¨¥™©®22]²³´µ¶´°°s»®¾dÁÂd<ÅÆÇÈÅ¿¾vÍvËÀÃYÓÇÁλs®®Îv®Ø»±³¹®©I‘çèéêë샣ïœíŠðñò‹•å¨Ÿù¥¯á·»ä(#[/h¿†%[¸p˜CaÓ"JÌÌ7n¦.:ÓömN3SD’‰B‡ƒJ†Ä§…/ƒø¤
......
.....
.....
.....
.....
.....
Como posso resolver isso??
14/09/2005 3:21pm
(~19 anos atrás)
como faço para mostrar a imagem <img scr> direto do banco sem ter que copiar para o hd
17/08/2005 8:28am
(~19 anos atrás)
Estou passando extamente por este problema.
Só que ao invés de colocar um link quero apenas exibir a foto.
Tentei usar object e img mas não consigo.
Alguém sabe como fazer isso?