PHP - Montando uma Lógica para Criar Consultas SQL de Duplo Retorno da Mesma Tabela
Sempre crie uma frase de segurança única para jogos, Airdrops e qualquer outra coisa de origem desconhecida, em vez de usar sua carteira principal.
Ao enfrentar desafios de desenvolvimento de software e manipulação de bancos de dados, é comum deparar-se com situações que exigem lógica complexa, como a necessidade de elaborar consultas SQL que retornem dados de uma mesma tabela em duas fases distintas. Neste artigo, exploramos um cenário típico e fornecemos um exemplo prático de como montar um script para realizar essa tarefa.
Cenário:
Imaginemos uma situação onde temos uma tabela denominada pg_menu, que armazena informações sobre menus e submenus em um sistema. Cada registro possui um campo ID_MENU_ID que se relaciona com o MENU_ID de outro registro, criando uma hierarquia entre os menus e seus submenus.
Objetivo:
O objetivo é desenvolver um script que construa uma estrutura de menus e submenus em formato de lista aninhada, levando em consideração a estrutura da tabela pg_menu. Destaca-se que o foco aqui não é a parte de programação, mas sim a lógica de acionamento para gerar os resultados desejados.
Exemplo de Script:
<?phpinclude("./conecta.php");echo '<ul id="Menu-airdropsQb" class="nav">';$MENUSQL = "SELECT * FROM pg_menu ORDER BY MENU_NOME ASC";$RESULTMENU = $con->query($MENUSQL);if ($RESULTMENU->num_rows > 0) {while ($linha = $RESULTMENU->fetch_assoc()) {$MENUID = $linha["MENU_ID"];$MENUNOME = $linha["MENU_NOME"];$MENUIDMENUP = $linha["ID_MENU_ID"];if ($MENUIDMENUP == 0) {$SUBMENUSQL = "SELECT * FROM pg_menu WHERE ID_MENU_ID = $MENUID ORDER BY MENU_NOME ASC";$RESULTSUBMENU = $con->query($SUBMENUSQL);if ($RESULTSUBMENU->num_rows > 0) {echo '<li class="nav-item"><a class="nav-link has-arrow waves-effect waves-dark" href="#" aria-expanded="false"><i class="mdi mdi-gauge"></i><span class="hide-menu">' . $MENUNOME . '</span></a><ul aria-expanded="false" class="collapse">';while ($linha = $RESULTSUBMENU->fetch_assoc()) {$SUBMENUNOME = $linha["MENU_NOME"];echo '<li class="nav-item"><a class="nav-link" href="index.html">' . $SUBMENUNOME . '</a></li>';}echo '</ul></li>';} else {echo '<li class="nav-item nav-small-cap">' . $MENUNOME . '</li>';}}}}mysqli_close($con);echo '</ul>';?>
Considerações Finais:
Este exemplo de script ilustra a lógica de acionamento para montar uma estrutura de menus e submenus utilizando uma tabela que possui relacionamento entre seus registros. É importante ressaltar que este é apenas um exemplo e pode ser adaptado de acordo com as necessidades específicas do seu projeto. O objetivo principal é compreender a abordagem lógica por trás da criação de consultas SQL de duplo retorno da mesma tabela.
Sempre verifique a segurança do seu código e adote boas práticas de programação ao implementar scripts em ambientes de produção.
0 Comentários