Autor Tópico: Mudar imagem do cabeçalho dinamicamente  (Lida 7943 vezes)

Adriano Silva

  • Novato
  • *
  • Mensagens: 13
Mudar imagem do cabeçalho dinamicamente
« Online: Setembro 30, 2010, 07:30:59 pm »
Por favor, alguém poderia me dizer se existe uma maneira de mudar dinamicamente a imagem do cabeçalho do menu?
O que gostaria de fazer é: baseado numa variável global setar a imagem a ser exibida, que estaria já armazenada no servidor.
Desde já, obrigado.
Adriano Silva
Programador/Analista de Sistemas/DBA
---------------------------------------------------------
"May the Force be with you.", Master Yoda.

leandroauler

  • Avançado
  • ****
  • Mensagens: 381
Re: Mudar imagem do cabeçalho dinamicamente
« Responder #1 Online: Outubro 20, 2010, 09:05:08 am »
Adriano,

Coloca o nome da imagem em uma tabela de seu banco.

No evento OnLoad da aplicação menu, crie uma sc_lookup e crie uma variavel que pegue o nome da imagem.

Em layout coloque a variavel onde aparece o nome da imagem default do sc.

Leandro
« Última modificação: Outubro 20, 2010, 03:08:49 pm por leandroauler »

jcleonis

  • Novato
  • *
  • Mensagens: 2
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #2 Online: Outubro 02, 2011, 09:50:33 pm »
leandroauler, tentei aplicar as suas dicas e nao funcionou. fiz exatamente como o explicado. o logo do cabecalho nao apareceu e quando cliquei na area onde deveria aparecer a imagem com o botão direito do mouse e cliquei na opção abrir imagem em nova aba, apareceu a seguinte mensagem!!!

You don't have permission to access /scriptcase/app/motoboyweb/_lib/img/ on this server

note que depois do img/ nao aparece o nome do arquivo colocado na variavel.

obrigado...

jcleonis

  • Novato
  • *
  • Mensagens: 2
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #3 Online: Outubro 03, 2011, 02:29:08 pm »
Pessoal alguém poderia me ajudar com esta duvida??? existe outra forma alternativa de solucionar como mudar o logo dinamicamente???

Muito obrigado a todos,


Jonatas.

Haroldo

  • Expert
  • *****
  • Mensagens: 6262
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #4 Online: Outubro 03, 2011, 06:18:49 pm »

Adriano Silva

  • Novato
  • *
  • Mensagens: 13
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #5 Online: Março 22, 2012, 04:25:24 pm »
Boa tarde pessoal.

Obrigado pelas mensagens.
A solução apresentada pelo Haroldo é boa, mas consegui encontrar outra solução. Só falhei em postá-la nesse tópico. Peço desculpas pela minha falta de resposta.

Vamos aos passos:
1 - No layout do menu, onde deveria ficar a imagem eu selecionei "Valor" e coloquei o nome de uma variável, [var_imagem].
2 - No evento OnLoad da aplicação de login eu uso o sc_lookup para trazer o nome da imagem que eu quero.
3 - Depois eu jogo o nome retornado do banco na variável [var_imagem], que defini como global, concatenando com o código HTML <img>.
Segue o código do OnLoad abaixo:

$var_imagem = "";
sc_set_global([var_imagem]);
sc_lookup(dsimagem, "select nome_imagem from tabela_imagem where cod_imagem = 1");
if (!empty({dsimagem}))
{
  $varimg = {dsimagem}[0][0];
  [var_imagem] = "<img border=0 src='../_lib/img/".$varimg."'>";
}

Nessa programação tive de usar uma variável intermediária ($varimg), pois a versão 6 estava dando erro de array na concatenação da string do código HTML com o {dsimagem}[0][0].


Até +

Adriano Silva
Adriano Silva
Programador/Analista de Sistemas/DBA
---------------------------------------------------------
"May the Force be with you.", Master Yoda.

rrma

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 816
  • Quem com porcos se mistura tanto bate até que fura
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #6 Online: Março 25, 2012, 12:47:08 pm »
Cara, essa era uma dúvida que sempre tive no sc.
Parabéns pela dica, vai ajudar muita gente!

Ainda não testei, mas estou criando uma aplicação multi-empresa, onde cada uma vai ter seu logo no cabeçalho do menu principal, seu código vai servir perfeitamente!
Muito obrigado.
Rodrigo
Rodrigo Araújo

Higor Vaz

  • Iniciante
  • **
  • Mensagens: 95
  • Eeeeu
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #7 Online: Abril 08, 2012, 12:21:40 pm »
Só para compartilhar eu fiz assim:
Criei um Form que insere a logomarca da empresa (num campo BLOB do mysql), e eles podem modificar quando quiserem.
No evento OnLoad do Menu
Código: [Selecionar]
//LOGOTIPO
$check_sql = " SELECT Imagem"
           . " FROM os_imagens"
           . " WHERE Nome = 'LOGOTIPO'";
sc_lookup(rs, $check_sql);

if (isset({rs[0][0]}))     // Row found
{
$varImg=base64_encode({rs[0][0]});
        [Logo] = "<img border=0 height='63px' src='data:image/png;base64,$varImg'>";
    }
else     // No row found
{
    [Logo] = 'Logotipo não configurado.';
}
///LOGOTIPO
No cabeçalho em NM_LOGOTIPO Valor = [Logo]
Como é uma logomarca não tem problema gravar no banco e fica mais fácil de configurá-la.
« Última modificação: Abril 08, 2012, 12:32:28 pm por Higor Vaz »
Compartilhe o conhecimento que Deus lhe dá e receberá mais.
Higor Vaz

Adriano Silva

  • Novato
  • *
  • Mensagens: 13
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #8 Online: Abril 10, 2012, 10:45:49 am »
Muito bom tb Higor.
Assim fica flexível para quem quiser usar Banco de Dados ou a imagens em diretório.
O próximo passo é criar uma aplicação de upload de imagens.
Assim o usuário ficar livre para mudar as imagens do projeto quando bem entender.
Mas estou sem tempo para fazer nesse momento.

Até +
Adriano Silva
Programador/Analista de Sistemas/DBA
---------------------------------------------------------
"May the Force be with you.", Master Yoda.

Nick McLary

  • Novato
  • *
  • Mensagens: 16
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #9 Online: Abril 17, 2012, 05:56:49 pm »
Pessoal, tentei várias vezes fazer conforme indicado mas não deu certo.

Não sei mais o que fazer!

Por favor, me ajudem.

Para ficar claro: tenho um campo tipo image no SQL Server que estou tentando EXIBIR no cabeçalho do menu para que apareça ao lado do nome do usuário, ou seja, o nome do usuário e sua respectiva foto.

Contudo, apesar de usar todos os códigos que encontrei na net, além desse acima, a imagem não aparece de jeito nenhum!!!

Se alguém puder me ajudar, agradeço.

Higor Vaz

  • Iniciante
  • **
  • Mensagens: 95
  • Eeeeu
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #10 Online: Abril 17, 2012, 06:52:34 pm »
Pessoal, tentei várias vezes fazer conforme indicado mas não deu certo.

Não sei mais o que fazer!

Por favor, me ajudem.

Para ficar claro: tenho um campo tipo image no SQL Server que estou tentando EXIBIR no cabeçalho do menu para que apareça ao lado do nome do usuário, ou seja, o nome do usuário e sua respectiva foto.

Contudo, apesar de usar todos os códigos que encontrei na net, além desse acima, a imagem não aparece de jeito nenhum!!!

Se alguém puder me ajudar, agradeço.
Nick boa noite, nós podemos lhe dar algum auxilio sim, poste seu código...
Seguindo os passos da minha postagem não tem erro.
[]'s
Higor
Compartilhe o conhecimento que Deus lhe dá e receberá mais.
Higor Vaz

jovitomelo

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 916
    • Simples Assim
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #11 Online: Abril 17, 2012, 10:37:58 pm »
Higor,

Sua solução está perfeita... se você me permitir, poderíamos publicá-la na sessão dicas do site da associação.

Parabéns!
Jovito Melo
Maceió - Alagoas

Nick McLary

  • Novato
  • *
  • Mensagens: 16
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #12 Online: Abril 18, 2012, 11:44:39 am »
Pessoal, tentei várias vezes fazer conforme indicado mas não deu certo.

Não sei mais o que fazer!

Por favor, me ajudem.

Para ficar claro: tenho um campo tipo image no SQL Server que estou tentando EXIBIR no cabeçalho do menu para que apareça ao lado do nome do usuário, ou seja, o nome do usuário e sua respectiva foto.

Contudo, apesar de usar todos os códigos que encontrei na net, além desse acima, a imagem não aparece de jeito nenhum!!!

Se alguém puder me ajudar, agradeço.
Nick boa noite, nós podemos lhe dar algum auxilio sim, poste seu código...
Seguindo os passos da minha postagem não tem erro.
[]'s
Higor


Bom dia Higor,

Segue conforme solicitado,

No menu > evento > onLoad:
Código: [Selecionar]
$check_sql = " SELECT corpFotoPequena"
           . " FROM GUsuarios"
           . " WHERE IDUsuario = '".[meuID]."'";
sc_lookup(rs, $check_sql);

if (isset({rs[0][0]}))     // Row found
{
$varImg=base64_encode({rs[0][0]});
    [Logo] = "<img border=0 height='63px' src='data:image/jpeg;base64,$varImg'>";
    }
else     // No row found
{
    [Logo] = 'Sem foto';
}

A imagem é JPG, mas já tentei: image/png, image/jpg, image/jpeg.

Template do cabeçalho:
Código: [Selecionar]
<style>
#msglogado { font-family:Arial, Helvetica, sans-serif; font-size:12px; color: #666666;  }
#nomeLogado { font-family:Arial, Helvetica, sans-serif; font-size:18px; color: #000000; font-weight:bold }
#linha2 { font-family:Arial, Helvetica, sans-serif; font-size:12px; color: #666666;  }
#linha3 { font-family:Arial, Helvetica, sans-serif; font-size:12px; color: #666666;  }
#tbHead {background-color:#ffffff;}

</style>

<table ID="tbHead" width="100%" height="67px" {NM_CSS_FUN_CAB}>
<tr>
<td width="219" align="left" valign="middle" {NM_CSS_CAB}>{NM_LOGOTIPO_ESQUERDO}</td>
<td width="29" align="right" valign="middle" {NM_CSS_CAB}>{foto}</td>
<td width="491" align="left" valign="middle" {NM_CSS_CAB}>
<span id="msglogado">{msglogado}</span><span id="nomeLogado">{nomeLogado}</span><br />
            <span id="linha2">{linha2}</span><br />
<span id="linha3">{linha3}</span></td>
<td width="198" align="right" valign="middle" {NM_CSS_CAB}>{NM_LOGOTIPO_DIREITO}</td>
</tr>
</table>



Grato pela atenção
« Última modificação: Abril 18, 2012, 05:03:16 pm por nickmclary »

Higor Vaz

  • Iniciante
  • **
  • Mensagens: 95
  • Eeeeu
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #13 Online: Abril 21, 2012, 10:10:29 am »
Então, vamos por parte:
1. Instale o HeidiSQL e conecte no seu banco;
2. Execute o SQL, no meu caso foi somente:
Código: [Selecionar]
SELECT Imagem FROM os_imagens WHERE Nome = 'LOGOTIPO'3. Ao retornar o resultado clique nele com o botão direito e "Image preview"
É exibida a imagem?

Peço que execute este procedimento para primeiro verificarmos se seu banco está gravando a imagem como deve ser.
Atenciosamente,
Higor
Compartilhe o conhecimento que Deus lhe dá e receberá mais.
Higor Vaz

Higor Vaz

  • Iniciante
  • **
  • Mensagens: 95
  • Eeeeu
    • Email
Re:Mudar imagem do cabeçalho dinamicamente
« Responder #14 Online: Abril 21, 2012, 10:11:45 am »
Higor,

Sua solução está perfeita... se você me permitir, poderíamos publicá-la na sessão dicas do site da associação.

Parabéns!
Pode sim Jovito, desde que citada a fonte heheheh.
Compartilhe o conhecimento que Deus lhe dá e receberá mais.
Higor Vaz