function getListPagina($pagina = 0, $rpp = 10, $condicion = "1=1", $parametros = array(), $orderby = "1") { $pos = $pagina * $rpp; $sql = "select * from encuesta e join pregunta p on e.id=p.idencuesta join respuesta r on p.id=r.idpregunta;"; $r = $this->bd->setConsulta($sql, $parametros); $respuesta = array(); //$cont=0; while ($fila = $this->bd->getFila()) { $objeto1 = new Encuesta(); $objeto1->set($fila); $objeto2 = new Pregunta(); $objeto2->set($fila, 3); $objeto3 = new Respuesta(); $objeto3->set($fila, 6); $respuesta[] = new JoinEPR($objeto1, $objeto2, $objeto3); /* $respuesta[$cont][0] = $objeto1; $respuesta[$cont][1] = $objeto2; $respuesta[$cont][2] = $objeto3; $cont++; */ } return $respuesta; }
function TerminarEntrevista() { session_start(); if (!isset($_SESSION['Usuario'])) { Respoder(false, 'Debe iniciar sesión', null); } if ($_SESSION['Usuario']['tipo'] != 'A') { Respoder(false, 'No tiene autorización', null); } if (!isset($_SESSION['Respondiendo'])) { Respoder(false, 'Debe indicar una entrevista', null); } $Invitacion = $_SESSION['Respondiendo']['Invitacion']; $Preguntas = $_SESSION['Respondiendo']['Preguntas']; $Respuestas = $_SESSION['Respondiendo']['Respuestas']; $video = $_SESSION['Respondiendo']['video']; if (count($Respuestas) != count($Preguntas)) { Respoder(false, 'Falta responder algunas preguntas', null); } foreach ($Respuestas as $key => $res) { $encontrado = false; foreach ($Preguntas as $key => $pre) { if ($res['idPregunta'] == $pre['idPregunta']) { $encontrado = true; } } if (!$encontrado) { Respoder(false, 'Una respuesta no coincide con su pregunta', null); } } $invit = new Invitacion(); if (!$invit->get('idInvitacion', $Invitacion['idInvitacion'])) { Respoder(false, 'No se encontró la invitación', null); } foreach ($Respuestas as $key => $res) { $rpta = new Respuesta(); $rpta->audio = $res['audio']; $rpta->idInvitacion = $invit->idInvitacion; $rpta->idPregunta = $res['idPregunta']; if (!$rpta->set()) { Respoder(false, 'Una respuesta no se guardó', null, $rpta); } } $invit->respondido = true; $invit->video = $video; $invit->fchRpta = new DateTime(); if ($invit->edit()) { unset($_SESSION['Respondiendo']); Respoder(true, 'Entrevista guardada', null); } else { Respoder(false, 'No se pudo guardar su entrevista', null, $invit); } }
function getListaPaginadaJSON($pagina = 0, $rpp = 3, $condicion = "1=1", $parametros = array(), $orderby = "1") { $pos = $pagina * $rpp; $sql = "select * from " . $this->tabla . " where {$condicion} order by {$orderby} limit {$pos}, {$rpp}"; $this->bd->setConsulta($sql, $parametros); $r = "[ "; while ($fila = $this->bd->getFila()) { $objeto = new Respuesta(); $objeto->set($fila); $r .= $objeto->getJSON() . ","; } $r = substr($r, 0, -1) . "]"; return $r; }