M@rc 1 Denunciar post Postado Agosto 20, 2013 a imagem é um blob, então o que eu te disse esta correto, deixa eu ver o código agora. Arquivo exibe.php <?php require 'conexao.php'; $resultado = mysql_query("select * from usuarios "); while ($row = mysql_fetch_array($resultado)) { $nome = $row['nome']; $senha = $row['senha']; echo '<img src="data:image/jpeg;base64,<?php echo base64_encode($img); ?>" />'; echo "$nome </br >"; echo "$senha </br >"; } ?> Arquivo exibe2.php <?php require 'conexao.php'; $id_usuario = (int) $_GET['id_usuario']; $sql = 'SELECT foto FROM usuarios WHERE id_usuario = ' . $id_usuario; $query = mysql_query($sql) or die(mysql_error()); $foto = mysql_result($query, 0); header('Content-Type: image/jpeg'); echo($foto); ?> Eu tava vendo uns scripts meus que geram imagem dinamicamente e lembrei de uma coisa, em alguns navegadores, se eu não me engano no Chrome, pra gerar a imagem você precisa colocar o tamanho, se não o arquivo fica carregando eternamente. Faça o seguinte, coloque mais esta linha abaixo do "header" que já existe: header('Content-Length: ' . strlen($foto)); Só isso eu acho que não vai resolver o problema, pois já deveria exibir a imagem mesmo que o arquivo continuasse carregando, mas vai evitar este problema futuramente. Coloquei mas continua igual Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 20, 2013 Se for tentar a solução que o Vinicius deu você tem que fazer assim: echo '<img src="data:image/jpeg;base64,' . base64_encode($row['foto']) . '" />'; O único inconveniente de usar dessa forma é que o HTML fica gigantesco. Porém, se formos falar de desempenho e melhores práticas o ideal seria salvar a imagem no filesystem e não no banco de dados. Compartilhar este post Link para o post Compartilhar em outros sites
M@rc 1 Denunciar post Postado Agosto 20, 2013 Se for tentar a solução que o Vinicius deu você tem que fazer assim: echo '<img src="data:image/jpeg;base64,' . base64_encode($row['foto']) . '" />'; O único inconveniente de usar dessa forma é que o HTML fica gigantesco. Porém, se formos falar de desempenho e melhores práticas o ideal seria salvar a imagem no filesystem e não no banco de dados. Deu erro: Parse error: syntax error, unexpected '.' in C:\xampp\htdocs\mysql\exibe.php on line 14 Entendo a questão de salvar em arquivos separados, mas estou tentando salvar no banco por motivos de aprendizagem. Compartilhar este post Link para o post Compartilhar em outros sites
Vinicius Rangel 208 Denunciar post Postado Agosto 20, 2013 O único inconveniente de usar dessa forma é que o HTML fica gigantesco. Porém, se formos falar de desempenho e melhores práticas o ideal seria salvar a imagem no filesystem e não no banco de dados. A parte do HTML gigante acho irrelevante mas quanto ao resto do que você disse esta perfeito, no último projeto em andamento precisei salvar algumas imagens com blob só que eu não salvo uma foto maior que 100px por exemplo, pois eu sei que não é uma boa pratica. echo "<img src='data:image/jpeg;base64,".base64_encode($row['foto']) ."' />"; esta com erro na concatenação, já que ele concatena com uma aspas simples e tenta utilizar ela de novo para chamar o valor do array do indice "foto". assim deve corrigir. Compartilhar este post Link para o post Compartilhar em outros sites
M@rc 1 Denunciar post Postado Agosto 20, 2013 A parte do HTML gigante acho irrelevante mas quanto ao resto do que você disse esta perfeito, no último projeto em andamento precisei salvar algumas imagens com blob só que eu não salvo uma foto maior que 100px por exemplo, pois eu sei que não é uma boa pratica. echo "<img src='data:image/jpeg;base64,".base64_encode($row['foto']) ."' />"; esta com erro na concatenação, já que ele concatena com uma aspas simples e tenta utilizar ela de novo para chamar o valor do array do indice "foto". assim deve corrigir. Finalmente deu certo...rs A imagem, usuario e senha apareceram. Obrigado a todos que ajudaram. Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 20, 2013 Boa Vinicius! :clap: Se não fosse você tentar algo diferente este tópico não ia acabar nunca. rs Compartilhar este post Link para o post Compartilhar em outros sites
M@rc 1 Denunciar post Postado Agosto 20, 2013 Boa Vinicius! :clap: Se não fosse você tentar algo diferente este tópico não ia acabar nunca. rs Tava complicado para funcionar rs. Mas valeu Leozitho por perder um tempo pra ajudar. :joia: Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 20, 2013 Imagina, precisando estamos aí. :) Acabou que eu fiquei curioso em saber por que não deu certo a tentativa de renderizar a imagem num segundo arquivo. Tenho quase certeza que era problema de codificação. Deixa eu aproveitar e fazer uma correção, eu falei em código binário mas na verdade eu estava me referindo ao código-fonte da imagem, não tem nada a ver com código binário. rs Compartilhar este post Link para o post Compartilhar em outros sites
M@rc 1 Denunciar post Postado Agosto 20, 2013 Imagina, precisando estamos aí. :) Acabou que eu fiquei curioso em saber por que não deu certo a tentativa de renderizar a imagem num segundo arquivo. Tenho quase certeza que era problema de codificação. Deixa eu aproveitar e fazer uma correção, eu falei em código binário mas na verdade eu estava me referindo ao código-fonte da imagem, não tem nada a ver com código binário. rs Como assim o código fonte da imagem? Compartilhar este post Link para o post Compartilhar em outros sites
Leozitho 81 Denunciar post Postado Agosto 20, 2013 Aliás, código-fonte não é o termo mais correto pois está mais relacionado com código de programação, e código binário também não é porque binário só tem 0 ou 1, então vamos chamar de "source" da imagem. rs Compartilhar este post Link para o post Compartilhar em outros sites