Autor Tópico: Filtrar dados no banco de dados contidos no conteudo login  (Lida 1234 vezes)

adao

  • Novato
  • *
  • Mensagens: 1
    • Email
Filtrar dados no banco de dados contidos no conteudo login
« Online: Agosto 11, 2011, 01:54:05 pm »
Olá pessoal!

Preciso de uma dica ou algum exemplo como segue:
 
Estou declarando uma variável como global no primeiro formulário(aplicacao(login)),
No segundo formulário preciso usar esta variável global para executar o filtro, e esta variável global não está disponível,
Utilizei o SC_alert() no primeiro formulário onde atribuo valores e ela mostra o conteúdo que preciso.
utilizei o SC_alert(), para mostrar o conteúdo no segundo formulário e mostra vazio ou melhor, erro variavel não declarada.
Como declarar essa variável global para que ela fique valendo pra todas aplicações daí em diante?,  preciso filtrar por esse campo para nao mostrar os dados que nao sao desse usuario que efetuou login.

Vou explicar aqui o que preciso, vou dar exemplo supondo que a minha aplicacao esteja funcionando:

o usuario acessa o login e senha
nessa tabela de login tem o ID, que identifica qual é o seu codigo(tabela de clientes),
apartir dai,ou seja do login, esse usuario que logou deverá ter acesso ao banco de dados  somente os dados que são dele, que possuem esse ID de cliente, os outros dados sao de outro cliente. que ele não pode ver de forma alguma.

alguem me diga uma forma automática de fazer isto no scriptcase?

Obrigado!

Adao Antonio
 

LuizMarin

  • Global Moderator
  • Avançado
  • *****
  • Mensagens: 273
    • Email
Re:Filtrar dados no banco de dados contidos no conteudo login
« Responder #1 Online: Agosto 11, 2011, 02:09:48 pm »
olá adão,

creio que voce poderia adicionar o codigo abaixo na aplicação de login, logo antes do comando "redir", e depois ir filtrando nas suas consultas. Adapte conforme suas necessidades:

espero ter ajudado.

abraços


       // pega codigo e nome do cliente
       sc_lookup(ds_tmp, "select nome, IDCliente from arquivo_usuarios where login = $var_login");

       if ({ds_tmp} === false)
       {
         echo "Erro de acesso. Mensagem = " . {ds_tmp_erro};
       }
         elseif (empty({ds_tmp}))
       {
         echo "Comando não retornou dados ";
       }
       else
       {
         [gloUsuarioNome] = {ds_tmp[0][0]};
         [gloIDCliente] = {ds_tmp[0][1]}; // para filtragem da area cliente
       }


      sc_redir('menu',var_login={login});      


Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re:Filtrar dados no banco de dados contidos no conteudo login
« Responder #2 Online: Agosto 11, 2011, 04:54:23 pm »
Adão, para levantar uma variável global no SC você pode usar esta construção:

[nomevar] = "Teste"

Como vc está levantando uma global para usar mais para frente, você marca ela como saída nas configurações de variáveis globais. Deste modo, ao executar o formulário de login, nomevar vai ter o valor teste em todo o projeto, a menos que vc redefinar seu valor em algum outro lugar.

Uma outra construção seria você transformar uma variável local em uma global com a macro sc_set_global():

$nomevar = "Teste"
sc_set_global($nomevar)
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

Consultoria Scriptcase Versão 5
http://www.infinitusweb.com.br

joeltonsilva

  • Avançado
  • ****
  • Mensagens: 360
Re:Filtrar dados no banco de dados contidos no conteudo login
« Responder #3 Online: Setembro 20, 2013, 05:33:14 pm »
olá adão,

creio que voce poderia adicionar o codigo abaixo na aplicação de login, logo antes do comando "redir", e depois ir filtrando nas suas consultas. Adapte conforme suas necessidades:

espero ter ajudado.

abraços


       // pega codigo e nome do cliente
       sc_lookup(ds_tmp, "select nome, IDCliente from arquivo_usuarios where login = $var_login");

       if ({ds_tmp} === false)
       {
         echo "Erro de acesso. Mensagem = " . {ds_tmp_erro};
       }
         elseif (empty({ds_tmp}))
       {
         echo "Comando não retornou dados ";
       }
       else
       {
         [gloUsuarioNome] = {ds_tmp[0][0]};
         [gloIDCliente] = {ds_tmp[0][1]}; // para filtragem da area cliente
       }


      sc_redir('menu',var_login={login});

Fiz como mostrou acima, mas após quando eu digito o login e senha, ele passa para o menu, mas antes de liberar o menu, ele abre a tela de erro que está anexo, logo após abre o menu, não sei como acertar este erro.

saulobborges

  • Expert
  • *****
  • Mensagens: 1392
    • SGi Sistemas
    • Email
Re:Filtrar dados no banco de dados contidos no conteudo login
« Responder #4 Online: Setembro 23, 2013, 12:06:18 pm »
Qual anexo!!?