Jump to content
Fórum Script Brasil
  • 0

Transformar bytes em imagem


marllos

Question

Bom dia a todos. Tenho um campo blob subtype 0 onde está gravado uma pequena imagem. Gostaria de me conectar ao banco e obter essa imagem com texto. Por exemplo:

$db=ibase_connect("local","sysdba","masterkey","ISO8859_1");

$ds = ibase_query("select id, img from tabela2");

$row=ibase_fetch_row($ds,IBASE_TEXT);

echo $row[1];

O resultado do script contém os mesmos caracteres que eu observo quando visualizo o campo com um editor hexadecimal, que são os seguintes:

ÿØÿà (... muitos símbolos ...) ?ù®Š(¯ÀÏö€(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢Š(¢ŠÿÙ

Tem como que eu transformar esse texto em uma imagem no meu html?

Obrigado.

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0
Acredito que o teu problema é o mesmo do rapaz aqui.

http://scriptbrasil.com.br/forum/index.php?showtopic=168467

Obrigado, então fazendo da forma indicada, por exemplo:

<?php

$db=ibase_connect("local","sysdba","masterkey","ISO8859_1");

$ds = ibase_query($db,"select img from tabela2");

$row=ibase_fetch_row($ds,IBASE_TEXT);

header('Content-type: image/jpg');

echo $row[0];

?>

A imagem é mostrada na pagina.

Mas eu quero mostrar a imagem e o html restante da pagina, o que a função header('Content-type: image/jpg'); vai me impedir.

Link to comment
Share on other sites

  • 0
Cria um arquivo.jpg(fopen) e escreve(fread) esse monte de caracteres nesse arquivo, depois mostra numa tag img src="arguivo_salvo".

Obrigado, com relação a criar arquivos, você sabe qual é o local indicado para criar esse arquivo como temporario no linux e no windows e se eles são apagados automaticamente ou não?

Link to comment
Share on other sites

  • 0

Não precisa criar um arquivo. Faça o seguinte:

<?php
// Arquivo imagem.php
header('Content-type: image/png'); // Tipo da sua imagem
echo $imagem // Imagem binária
<div>
    <p>Página com HTML</p>
    <!-- O atributo "src" recebe o endereço do arquivo que gera a imagem -->
    <img src="imagem.php" alt="" />
</div>

Um abraço.

Link to comment
Share on other sites

  • 0
Não precisa criar um arquivo. Faça o seguinte:

<?php
// Arquivo imagem.php
header('Content-type: image/png'); // Tipo da sua imagem
echo $imagem // Imagem binária
<div>
    <p>Página com HTML</p>
    <!-- O atributo "src" recebe o endereço do arquivo que gera a imagem -->
    <img src="imagem.php" alt="" />
</div>

Um abraço.

Obrigado Willian, estava um tempo sem olhar os posts e não vi que você respondeu.

O negócio é o seguinte, estou experimentando trabalhar de um jeito onde eu pego os dados de uma query e jogo num xml e depois uso o jquery para passar os dados do xml para a pagina. Tudo isso usando o ajax do jquery. E eu estava pessando em como incluir imagens nesse método.... O maximo que eu fiz foi incluir os bytes da imagem no xml dentro de uma CDATA, mas eu não sei como transformar isso em imagem....

Link to comment
Share on other sites

  • 0

Recebi um email, com uma imagem, e houve algum problema e o navegador mostrou o código e então pude ver a resposta que eu procurava: <img src="data: ... ". Experimentei e deu certo, veja como ficou:

<!doctype html>

<html>

<body>

<?php

function get_img(){

$dbh=ibase_connect("localhost/3050:local","sysdba","masterkey");

$ds=ibase_query("select img from tabela2");

$row=ibase_fetch_row($ds,IBASE_TEXT);

$base64=base64_encode($row[0]);

return $base64;

}

?>

<img src="data:image/jpeg;base64,<?php echo get_img();?>">

</body>

</html>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...