Projeto 2: PHP+MaDB - Tarefa - 4 [Desenvolvimento do paConsultar (Recursivo)] --------------------------------------------------------------------------------------------------------------------------------------------------------------- Premissa: A. Sempre mantenham os serviços de "Servidor de Páginas" e "Servidor de Banco de Dados" ATIVADOS no Painel de Controle do XAMPP (ou equivalente). B. Nos computadores dos Labs SEMPRE acessem o Xampp Control Panel e ATIVEM os Serviços (mesmo sem ser usuario Administrador). C. Acesse o gerenciador de arquivos e Localize o diretório relacionado ao 'localhost'. D. Dentro do diretório do localhost crie um diretório com nome /'SiglaSeuNomeCompleto'/PHP-MariaDB/ - SIGLA-SeuNomeCompleto, exemplo: nome do aluno Abreu Sodré da Silva. SIGLA: ASDS --------------------------------------------------------------------------------------------------------------------------------------------------------------- 1. Usando o Gerenciador de arquivos do computador, acesse o diretório //localhost/ilp540/SiglaSeuNomeCompleto/PHP-MariaDB/tar1. 2. Copie o arquivo estrutrecursivoG1.php para estrutrecursivoG2.php 3. Edite o arquivo estrutrecursivoG2.php. Este programa deve seguir as especificações: 3.a. Edite um cabeçalho com os seguintes campos: ############################################################################################################################################################### # Programa.: paConsulta.php (indique o nome do arquivo) # Objetivo.: Faça um resumo de uma linha com o objetivo deste PA # Descrição: Descreva seu programa # Autor....: Seu Nome Completo # Criação..: 2025-MM-DD # Alteração: 2025-MM-DD - Indique o que foi feito no dia de trabalho. No primeiro dia as datas de crição e atualização ficam iguais e em alteração se indica o # que foi feito. SE mais de uma linha for necessária para a descrição o texto pode ficar alinhado com a Data da Atualização, NÃO SE # ESQUECENDO de colocar na primeira linha o sinal de comentário. ############################################################################################################################################################### Note: O 'cabeçalho DEVE TER suas Linhas iniciadas com '#' os demais comentários ao longo do PA podem usar // ou /**/. 3.b. Crie uma função com nome iniciapagina($acao,$tabela) Parâmetros: $acao: indica uma das funcionalidade do PA-PHP (Navegar, Incluir, Excluir, Alterar, Consultar ou Listar) $tabela: Nome Lógico de uma tabela da base de dados: O nome lógico pode ser "Pedido de Compra" e o nome formal ser pedcompra. Nome formal é o nome de um objeto como está escrito NA Base de Dados. Nome Lógico é como está identificado nos Modelos de um Sistema de Informação esta função emite as TAGs que iniciam uma página HTML. Nesta função cada TAG HTML deve ser emitida por um comando PHP. printf("\n"); printf("\n"); printf(" \n"); printf(" \n"); printf(" \n"); printf(" \n"); printf(" \n"); printf(" $acao: $tabela\n"); 3.c. Crie uma função com nome terminapagina($acao,$tabela,$turno,$prg) Parâmetros: $acao: indica uma das funcionalidade do PA-PHP (Navegar, Incluir, Excluir, Alterar, Consultar ou Listar) $tabela: Nome Lógico de uma tabela da base de dados: O nome lógico pode ser "Pedido de Compra" e o nome formal ser pedcompra. $prg: Nome do arquivo .php $turno: Turno no qual o aluno que desenvolve o PA está Matriculado (use 'Tarde' ou 'Noite'). printf("
\n"); printf(" $acao | © 2025.2 - FATEC Ourinhos 4ºADS-$turno | $tabela | $prg\n"); printf(" \n"); printf("\n"); 3.d. Criar 3 variáveis de controle recursivo: $acoes, $bloco e $salto verificando se existe valor no vetor $_REQUEST[] nas posições correspondentes 'acoes', 'bloco' e 'salto'. $acoes deve receber $_REQUEST['acoes'] se o valor de $_REQUEST['acoes'] existir, senão "Abertura" (para a 1ª execução); $bloco deve receber $_REQUEST['bloco'] se o valor de $_REQUEST['bloco'] existir, senão "1" (para a 1ª execução) e $salto deve receber $_REQUEST['salto']+1 se o valor de $_REQUEST['salto'] existir, senão "1" (para a 1ª execução) 3.e. Inicie uma variável com nome $tabela com o nome Lógico da Tabela que foi designado para o aluno no projeto-2 3.f. Execute a função iniciapágina() com os argumentos: $acao, $tabela 3.g. Construa um bloco de comandos de desvio condicional com opções mutuamente exclusivas (SWITCH() ... CASE()...) validando os blocos pelo valor da variável $acao. Devem ser escritos 6 blocos CASE, um para cada valor de $acao (Navegar, Incluir, Excluir, Alterar, Consultar ou Listar). O Comando SWITCH() fica escrito assim: printf("switch ( TRUE )\n"); printf("{ # Desvio de fluxo em blocos mutuamente exclusivos baseados no valor de $acao\n"); printf(" case ( $acao=='Navegar' ):\n"); printf(" { # Bloco de Controle de navegação sobre os dados de uma tabela para escolha de ação ICAEL\n"); printf(" break;\n"); printf(" }\n"); printf(" case ( $acao=='Incluir' ):\n"); printf(" { # Bloco de Controle de INCLUSÃO de linha em uma tabela\n"); printf(" break;\n"); printf(" }\n"); printf(" case ( $acao=='Consultar' ):\n"); printf(" { # Bloco de Controle de CONSULTA de linha em uma tabela\n"); printf(" break;\n"); printf(" }\n"); printf(" case ( $acao=='Alterar' ):\n"); printf(" { # Bloco de Controle de ALTERAÇÃO de linha em uma tabela\n"); printf(" break;\n"); printf(" }\n"); printf(" case ( $acao=='Excluir' ):\n"); printf(" { # Bloco de Controle de EXCLUSÃO de linha em uma tabela\n"); printf(" break;\n"); printf(" }\n"); printf(" case ( $acao=='Listar' ):\n"); printf(" { # Bloco de Controle de LISTAGENS de linhas em uma tabela\n"); printf(" break;\n"); printf(" }\n"); printf("}\n"); 4. Grave seu arquivo estrutrecursivoG2.php. 5. Esta tarefa NÃO terá o envio pelo Teams. A estrutura do PA será usada para implementação de todas as funcionalidades NICAEL que irão gerenciar os dados da tabela alvo designada para aluno.