コード例 #1
0
	public function atualizarOrdemRespostaDAO(ProvaPergunta $pergunta){

		$banco = $this->getBancoDados(); 

		$query ="SELECT tbl_prova_resposta.prova_resposta     AS prova_resposta,
						tbl_prova_resposta.ordem              AS ordem
				FROM tbl_prova_resposta
				WHERE tbl_prova_resposta.prova_pergunta = ".$pergunta->getId()."
				AND   tbl_prova_resposta.resposta_filho IS NOT NULL
				";
		$retorno = $banco->executaSQL($query); 
		if($retorno == NULL) {
			throw new Exception("Erro ao atualizar a ordem das respostas. $query ",0);
		}

		$qtde_respostas = $pergunta->getQtdeResposta();

		$rand = new UniqueRand();
		#echo "<hr>($qtde_respostas)";
		while($linha = $banco->fetchArray($retorno)) {
			$aux_resposta = $linha["prova_resposta"];
			$aux_ordem    = $linha["ordem"];

			$ordem = $rand->uRand(0,$qtde_respostas-1);

			$query = "	UPDATE tbl_prova_resposta SET ordem = ".$ordem."
						WHERE prova_resposta = ".$aux_resposta;
			#echo nl2br($query);
			#echo "<br>";
			if(!$banco->updateSQL($query)) {
				throw new Exception("Erro ao atualizar a ordem das respostas interno.",0);
			}
		}
	}