Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

diokhan

niveis e subniveis

Recommended Posts

diokhan

boas,

tenho uma duvida, eu no meu projecto preciso de listar toda a informação que vou buscar a base de dados, existe ao inicio só os dados com o LEVEL = 1, e em frente a cada registo um botão para aparecer os registos de LEVEL = 2 e que o EC seja '*.%', o * significa que vai apanhar o EC do registo anterior de LEVEL = 1, o % significa que vai mostrar todos, porque há ate ao LEVEL = 4.

exemplo:

EC | LEVEL | NAME | INFO

1  |      1    | Teste | (botao)

2  |      1    | Teste2| (botao)

e ao clicar no botão vai aparecer:

EC | LEVEL | NAME | INFO

1.1 |    2    | teste | (botao)

1.2 |    2    | teste | (botao)

espero ter explicado bem a ideia, o EC seguinte é sempre referente ao EC anterior


...Join the dark side...and get a free cookie...

Share this post


Link to post
Share on other sites
cyclop

Não percebi lá muito bem... mas o que queres fazer não é simplesmente colocar a key EC como AutoIncrement?


"Quando eu for grande quero ser como o Celso"

Share this post


Link to post
Share on other sites
cyclop

porque não mudas a estrutura da base de dados e adicionas um campo "pai"?

A logica seria select * from tabela where pai is null para calculares a raiz, depois bastava criares uma função recusiva que ia buscar os parents e concatenar, tudo com mysql....


"Quando eu for grande quero ser como o Celso"

Share this post


Link to post
Share on other sites
diokhan

podes explicar melhor a ideia?

eu pensei em fazer pela query no WHERE EC LIKE "$_GET[ec]"'.%'

a minha solução não funcionou 🤔

mas se puderes explicar melhor a tua ideia agradecia B)


...Join the dark side...and get a free cookie...

Share this post


Link to post
Share on other sites
diokhan

já consegui fazer o que queria, passei no link o EC

ficou assim:

<a href=restrito.php?opcao=enzyme_sublevel2&ec=$r->EC>

e na outra pagina fiz assim na query:

$paginacao->sql = "SELECT * FROM ENZYME WHERE LEVEL = 2 AND EC LIKE '$ec.%' ORDER BY EC ASC";

e ficou a funcionar como queria..obrigado pela ajuda B)


...Join the dark side...and get a free cookie...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.