function GuardarRespuesta() { global $files_dir, $files_url; 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']; $Entrevista = $_SESSION['Respondiendo']['Entrevista']; $Reespuesta = new Respuesta(); $Pregunta = new Pregunta(); $_idPreg; if (!($_idPreg = filter_input(INPUT_POST, 'idPregunta', FILTER_VALIDATE_INT))) { Respoder(false, 'Error de parámetros', null); } if (!$Pregunta->get($_idPreg)) { Respoder(false, 'La pregunta no existe', null); } if (!isset($_FILES['audio'])) { Respoder(false, 'No se envió audio', null); } $fileName = $_FILES['audio']['name']; $fileType = $_FILES['audio']['type']; $fileSize = $_FILES['audio']['size']; $fileTemp = $_FILES['audio']['tmp_name']; $fileErro = $_FILES['audio']['error']; if ($fileErro != UPLOAD_ERR_OK) { Respoder(false, 'Error en la transmisión del archivo', null); } if ($fileSize <= 0) { Respoder(false, 'Debe indicar un documento para subir', null); } if ($fileType != 'audio/wav') { Respoder(false, 'El audio debe tener formato WAV', null); } $fileNewName = 'audio_' . sha1($Invitacion['idInvitacion'] . $Pregunta->idPregunta) . '.wav'; $fileNew = $files_dir . $fileNewName; $fileUrl = $files_url . $fileNewName; if (!move_uploaded_file($fileTemp, $fileNew)) { Respoder(false, 'Error al guardar audio', null); } $Reespuesta->audio = $fileUrl; $Reespuesta->idInvitacion = $Invitacion['idInvitacion']; $Reespuesta->idPregunta = $Pregunta->idPregunta; array_push($_SESSION['Respondiendo']['Respuestas'], $Reespuesta->toArray()); Respoder(true, 'Audio guardado', null); }