Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Senhores,
Boa noite!
Em uma tela de cadastro, coloquei um "input file" para fazer o upload de uma imagem e gravar o seu binário em um campo longblob do MySQL. Acontece que agora recupero o conteúdo do banco de dados e na hora de apresentar a imagem esta não aparece:
Eis o HTML:
<p id="img">
<img id="med_logo" alt="Logomarca da..." src="{med_logo}">
</p>
Eis o PHP da Camada de Dados:
static function consultarEscola(Model $escola) {
try {
$conn = Conexao::obterConexao();
$str = "select e.*
from lcd_escola e
inner join lcd_escola_situacao es
on e.cod_escola = es.cod_escola
where e.cod_escola = ?
and es.tip_situacao = 'A'
and es.dat_situacao = (select max(dat_situacao)
from lcd_escola_situacao x
where x.cod_escola = es.cod_escola)";
$sql = $conn->prepare(trim($str));
$sql->execute(array($escola->get("cod_escola")));
$conn = null;
return $sql->fetchObject("EscolaModel");
} catch(PDOException $e) {
$conn = null;
print $e->getMessage();
}
}
Eis o PHP da Camada de Negócio:
case "Visualizar":
$escola = EscolaDAO::consultarEscola($escola);
$perfis = EscolaPerfilDAO::consultar($escola);
if ($escola) {
$visao->visualizar($escola, $perfis);
} else {
$visao->visualizar(null);
}
break;
Eis o PHP da Camada de Interface:
public function visualizar($escola, $perfis) {
if ($escola) {
$this->modelo->setCurrentBlock("Formulario");
$this->setEscola($escola);
$this->listarPerfilEscola($perfis);
} else {
$this->modelo->setVariable("mensagem", "Ops!Não foi possível apresentar as informações da escola. Tente mais tarde. :-(");
}
header("Content-type:".$escola->get("tip_logo"));//Ate agora so gravei image/jpeg
$this->modelo->parseCurrentBlock();
$this->modelo->show();
}
O que mais preciso fazer no PHP para que a imagem seja convertida do binário que está no banco para a imagem original?Carregando comentários...