public function responder() { $this->orm->connect(); $codigo = $this->post->encuesta; unset($this->post->encuesta); $options['pregunta']['lvl2'] = "by_encuesta"; $cod['pregunta']['encuesta'] = $codigo; $this->orm->read_data(array("pregunta"), $options, $cod); $numPreguntas = $this->orm->get_objects("pregunta", $options, $cod); $options['encuesta']['lvl2'] = "by_codigo"; $cod['encuesta']['codigo'] = $codigo; $this->orm->read_data(array("encuesta"), $options, $cod); $encuesta = $this->orm->get_objects("encuesta", $options, $cod); $encuesta = new encuesta($encuesta[0]); if (sizeof($numPreguntas) == $this->contarRespuestas($this->post)) { foreach ($this->post as $key => $value) { $respuesta = new respuesta(); $respuesta->set('opcion', $value[0]); $respuesta->set('usuario', $_SESSION['persona']['cedula']); $this->orm->insert_data("normal", $respuesta); unset($respuesta); } $beneficio = new beneficio(); $beneficio->set('encuesta', $encuesta->get('codigo')); $beneficio->set('tarjeta', $_SESSION['persona']['cedula']); $beneficio->set('fecha', date("y-m-d")); $beneficio->set('retribucion', $encuesta->get('retribucion')); $this->orm->insert_data("normal", $beneficio); $options['tarjeta']['lvl2'] = "by_persona"; $cod['tarjeta']['persona'] = $_SESSION['persona']['cedula']; $this->orm->read_data(array("tarjeta"), $options, $cod); $tarjeta = $this->orm->get_objects("tarjeta", $options, $cod); $tarjeta = new tarjeta($tarjeta[0]); $tarjeta->set('saldo', $tarjeta->get('saldo') + $encuesta->get('retribucion')); $this->orm->update_data("saldo", $tarjeta); $this->displayMessage('Encuesta respondida exitosamente', '¡Gracias por participar!'); } else { $this->displayMessage('Preguntas sin responder', 'Por favor seleccione una opción de respuesta para cada una de las preguntas presente en la encuesta'); $options['encuesta']['lvl2'] = "by_codigo"; $cod['encuesta']['codigo'] = $encuesta->get('codigo'); $options['pregunta']['lvl2'] = "by_encuesta"; $cod['pregunta']['encuesta'] = $encuesta->get('codigo'); $options['opcion']['lvl2'] = "all"; $components['encuesta']['pregunta'] = array("e_p"); $components['pregunta']['opcion'] = array("p_o"); $this->orm->read_data(array("encuesta", "pregunta", "opcion"), $options, $cod); $encuesta = $this->orm->get_objects("encuesta", $components); $this->engine->assign('encuesta', $encuesta[0]); } $this->orm->close(); }
<?php $pregunta = new encuesta($data); $result = $pregunta->get(); if ($result != false && $result->rowCount() > 0) { $data['action'] = 'update'; $row = $result->fetch(PDO::FETCH_OBJ); } else { $data['action'] = 'insert'; } if ($data['action'] == 'update') { ?> <h3>Editar pregunta</h3> <?php } else { ?> <h3>Introducir una nueva pregunta</h3> <?php } ?> <a id="help" href="#" style="float: right;">Ayuda</a> <a href="index.php" style="float: right;">Nueva pregunta</a> <form action="index.php" method="POST" name="pregunta"> <input type="hidden" name="action" value="<?php echo $data['action']; ?> "/> <select name="navegador"> <?php if ($data['action'] == 'update') { ?>