Foto no cabeçalho

Gente!!

Preciso colocar a foto do usuário no canto direito do menu…
é uma imagem inserido no meu banco de dados, como tipo de bytea!

Como faço?

Júlia Garbossa

Júlia,

Nuna coloquei uma foto em cabeçalhos/rodapé… mas o procedimento é ± o seguinte:

Ao fazer o login você seleciona, além do login e senha, também a foto do usuário (no banco). A seguir cria uma variável para esta foto e seta essa variável como uma variável global, a seguir coloca no menu.

Detalhes:
a) O SC só aceita alguns tipos de imagens, então ao escolher um nome para essa variável global, seria interessante que você estabelecer uma nomenclatura própria de nomes de imagens (ex. foto.jpg);
b) No cabeçalho ou rodapé não existe um campo para vc definir as dimensões das imagens, então TODAS as suas imagens têm que ser pré-definidas (antes de serem armazenadas no banco), pra que o menu não fique uma salada de frutas.

Bem, nunca fiz isso, mas acho que caminho é por aí.

Forte abraço.

Jovitomelo,

Obrigada desde já viu!

Vou tentar e te falo…

O Haroldo tbm me deu o link para colocar assim
http://www.mediacollege.com/internet/html/image-tag.html

Júlia Garbossa

Ow coisinha dificil de sair!!

Gente eu preciso fazer uma coisa Simples!!! Mais num consigo.

Tenho no banco de dados um campo do tipo bytea, onde armazeno minha foto.

SC, poderia me ajudar!??!?! Como vcs exibir numa app.formulario a minha imagem?

Tentei…

sc_lookup(img,"SELECT parmlogo FROM _parametro"); [var_img] = {img[0][0]}; Ele me mostra somente numeros... 169432

Tentei tbm utilizar uma função pronta!!

function mostrarImagemBD($img,$l=100,$a=100){ $src = imagecreatefromstring(pg_unescape_bytea($img)); $width = imagesx($src); $height = imagesy($src);
    $img = imagecreatetruecolor($l,$a); 
    imagecopyresized($img,$src,0,0,0,0,$l,$a,$width,$height); 

    ob_start();
    imagejpeg($img, null, 100);  
    imagedestroy($img);
    $imagem = ob_get_contents();
    ob_clean();
    ob_end_flush();         
    echo "<img src=\"data:image/jpg;base64,".base64_encode($imagem)."\">";

}

Porém fica somente uma imagem preta… e dá msg de erro …
imagecreatefromstring() [function.imagecreatefromstring]: Empty string or invalid image
imagesx(): supplied argument is not a valid Image resource
imagesy(): supplied argument is not a valid Image resource
imagecopyresized(): supplied argument is not a valid Image resource

Alguém poderia me ajudar?!?!?!

Você pode usar o e atribuir esse valor a um campo Label e no rodape/cabeçalho chamar o Campo.
Mas isso usando o campo como Imagem(Nome do Arquivo).

Mais eu teria que ter a foto em uma pasta para isso ocorrer certo?

exato

por exemplo:

Então Max.

Com a foto armazenada em uma pasta eu consigo…
O que estou tentando fazer eh pegar a foto que está armazenada no campo do tipo BYTEA.

Júlia,

Tente o seguinte, por via das duvidas e pra teste, se a imagem gravada for um jpg, coloque o seguinte header no lugar do que vc esta usando:

header("Content-type: image/jpeg");

se for gif:
header("Content-type: image/gif");

se for png:
header("Content-type: image/pgn"); 

[var_img] = {img[0][0]};

Júlia, conseguiu? Estou com o mesmo problema.

No Evento onScricipinit da app

// Buscar a imagem no banco de dados
$sql_buscaimagem = “SELECT seu_campo_bytea FROM tabela WHERE id = {id}”;
sc_lookup(data_imagem,$sql_buscaimagem);
if (isset({data_imagem[0][0]})) // Row found
{
$varImg=base64_encode({data_imagem[0][0]});
// Aqui você transportou o conteúdo de uma imagem (bytea) para uma variável…
$icone = “”; // 19px é o tamanho a ser mostrado…
}
else // No row found
{
$icone = ‘Imagem não Encontrada.’;
}

No Cabeçalho ou Rodapé da app

Variável do tipo [size=18pt]Valor[/size] com o conteúdo [size=10pt]$icone[/size] (definido acima)

Tentem…

A solução funciona, o caminho e esse.