Objeto com mais de uma variavel
Estou tentando passar essas duas consultas como variáveis em um objeto, mas não estão retornando na página de chamada da função.
Arquivo prova1.php:
Arquivo Provas.php
Arquivo prova1.php:
<?php $path = $_SERVER['DOCUMENT_ROOT'] .'/selecao/'; include_once($path.'/Controllers/prova_controller.php'); session_start(); $listar_questoes = new Provas(); $listar_questoes = $listar_questoes->ListarProvas(); ?> <!DOCTYPE html> <html> <head> <title>Prova</title> </head> <body bgcolor=#cccc99 style = "lang: pt-BR; link:#000080; vlink:#800000; dir:ltr"> <form action="" method="POST"> Questão 1: <?php echo $prova1["Questao"]);?> <br><br><input type=radio name=questao1 value="<?php echo $prova1["Alt_A"];?>">(A) <?php echo $prova1["Alt_A"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova1["Alt_B"];?>">(B) <?php echo $prova1["Alt_B"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova1["Alt_C"];?>">(C) <?php echo $prova1["Alt_C"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova1["Alt_D"];?>">(D) <?php echo $prova1["Alt_D"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova1["Alt_E"];?>">(E) <?php echo $prova1["Alt_E"];?> Questão 2: <?php echo $prova1["Questao"]);?> <br><br><input type=radio name=questao1 value="<?php echo $prova2["Alt_A"];?>">(A) <?php echo $prova2["Alt_A"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova2["Alt_B"];?>">(B) <?php echo $prova2["Alt_B"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova2["Alt_C"];?>">(C) <?php echo $prova2["Alt_C"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova2["Alt_D"];?>">(D) <?php echo $prova2["Alt_D"];?> <br><br><input type=radio name=questao1 value="<?php echo $prova2["Alt_E"];?>">(E) <?php echo $prova2["Alt_E"];?> <input type=submit value=Gravar name=Gravar><br><br> <input type=submit value=Finalizar name=Finalizar> </form> </body> </html>
Arquivo Provas.php
<?php $path = $_SERVER['DOCUMENT_ROOT'] .'/selecao'; include_once($path.'/Conexao.php'); Class Provas { public function ListarProvas() { $objConexao = new Conexao(); $conexao = $objConexao->getConexao(); $sql = "select * from questoes where Id = 1"; $resposta = $conexao->query($sql); $prova1 = $resposta->fetch_assoc(); $sql = "select * from questoes where Id = 2"; $resposta = $conexao->query($sql); $prova2 = $resposta->fetch_assoc(); $listagemProvas = new Provas($prova1, $prova2); return $listagemProvas; } } ?>
Lúcio Sales
Curtidas 0
Respostas
Arthur Heinrich
21/09/2024
Não entendo nada de PHP. Porém, quando você definiu a classe Provas e o método ListarProvas(), você não criou propriedades da sua classe para armazenar os resultados.
Parece que você utilizou apenas variáveis locais, dentro do método ListarProvas() e, quando o método termina de executar, as variáveis são desalocadas. Seu conteúdo não é exportado.
Mesmo que tivessem sido declaradas propriedades, você não poderia acessá-las diretamente usando $prova1 ou $prova2. Provavelmente teria que fazer uma referência à classe: $listar_questoes->prova1->Questao e não instanciar uma nova classe dentro do método ListarProvas.
Parece que você utilizou apenas variáveis locais, dentro do método ListarProvas() e, quando o método termina de executar, as variáveis são desalocadas. Seu conteúdo não é exportado.
Mesmo que tivessem sido declaradas propriedades, você não poderia acessá-las diretamente usando $prova1 ou $prova2. Provavelmente teria que fazer uma referência à classe: $listar_questoes->prova1->Questao e não instanciar uma nova classe dentro do método ListarProvas.
GOSTEI 0