Ir para conteúdo
Fórum Script Brasil
  • 0

Problema na exibição de imagens do BD tamanho superior a 31kbytes


Ricardo Spinoza

Pergunta

Pessoal,

Sou novato na lista e no php, estou tentando recuperar uma imagem (no formato hexadecimal) do banco de dados(MS SQL-Server 2000).

Em meus testes percebi que imagens com tamanho até 31 kbytes são exibidas na integra, ao contrário das imagens com tamanho superior a 31 kbytes que aparecerem parciamente na tela.

Alguém já passou por isto e tem uma dica para me dar?

Segue abaixo o código editado:

<?php
 ob_start();

function setImagemBD($imagem, $idNegocio="") {
    $bd = new BancoDados();
    $status;
    if(empty($imagem)) {
        echo "<b>O nome ou o caminho da imagem não é válido!!</b>";
        $status = false;
    }
    else {
        $handle = fopen($imagem, "rb");//abre em modo binário            
        $conteudo = bin2hex(fread($handle, filesize($imagem)));
        fclose($handle);
           $query = " INSERT INTO TB_IMAGEM1 (Imagem, ImagemId) VALUES ('$conteudo', 1)";//1 fixo só para  teste            
        $bd->SqlExecuteQuery($query);
        $bd->SqlDisconnect();
        }
}

function getImagemBD($idImagem="") {

  header("Content-Type: image/jpg");
  $bd = new BancoDados();
  $query = "select imagem from TB_IMAGEM where ImagemID = $idImagem ";
  $bd->SqlExecuteQuery($query);
  echo hex2bin($bd->SqlQueryShow(1));
 }

 function hex2bin ($RawInput)
 {
  $BinStr = '';
  for ($i = 0; $i < strlen ($RawInput); $i += 2){
   $BinStr .= '%'.substr ($RawInput, $i, 2);   
  }
  return rawurldecode ($BinStr);
 } 

setImagemBD("2007403.jpg");//incluir a imagem
getImagemBD("1");//recupera a imagem
?>

[]s

Ricardo Spinoza

Editado por Ricardo Spinoza
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...