Objeto com mais de uma variavel

21/09/2024

0

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:

<?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

Lúcio Sales

Responder

Posts

23/09/2024

Arthur Heinrich

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.
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar