¡Ayuda! Registrar dos valores diferentes del mismo input
Publicado por Cristina (12 intervenciones) el 27/01/2021 13:00:14
Hola,
Necesito ayuda para resolver una problemática con mi cuestionario de radiobuttons.
Los usuarios cuando realizan el cuestionario tienen que escoger entre los valores 1, 2, 3, 4 y 5, registrándose al igual en la base de datos. Por lo que en el editor de código se encuentra así:
La problemática es que desconozco como se puede guardar adicionalmente otro valor del mismo input, es decir, cuando un usuario escoge por ejemplo el valor 1 en una pregunta del cuestionario, en la base de datos se debe registrar en un campo el valor 1 y en otro campo el valor 5.
Los valores para el nuevo campo invertido quedarían así: 1=5, 2=4, 3=3, 4=2, 5=1.
Quien escoja el valor 4 en una pregunta del cuestionario, en la base de datos se tiene que registrar en un campo el valor directo 4 y en otro campo el valor invertido 2. (Espero haberme explicado lo mejor posible).
Posteriormente cuando estén los valores directos y los invertidos registrados, se tienen que hacer operaciones matemáticas que también desconozco realizar. Por ejemplo, PR1(valor directo) + PR1X (valor invertido).
¡Muchas gracias a todos!
Necesito ayuda para resolver una problemática con mi cuestionario de radiobuttons.
Los usuarios cuando realizan el cuestionario tienen que escoger entre los valores 1, 2, 3, 4 y 5, registrándose al igual en la base de datos. Por lo que en el editor de código se encuentra así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<script>
function resultados() {
if (validarFormulario()) {
$.ajax({
url: 'http://xxxx/api/resultados',
type: 'POST',
data: {
PR1: document.querySelector('input[name="preg1"]:checked').value,
PR2: document.querySelector('input[name="preg2"]:checked').value,
PR3: document.querySelector('input[name="preg3"]:checked').value,
PR4: document.querySelector('input[name="preg4"]:checked').value,
PR5: document.querySelector('input[name="preg5"]:checked').value,
},
success: function (respuesta) {
console.log(respuesta.message)
if (respuesta.message.affectedRows > 0) {
console.log("Los datos se han enviado correctamente")
window.location.href = "XXX.html";
} else {
console.log("Faltan datos por introducir")
}
},
error: function () {
alert("No es posible completar la operación");
}
});
}
}
</script>
<div id="cuestionario" class="radios">
<label>1. Primer enunciado del cuestionario</label>
<div class="respuestas">
<input type="radio" name="preg1" value="1"/>1
<input type="radio" name="preg1" value="2"/>2
<input type="radio" name="preg1" value="3"/>3
<input type="radio" name="preg1" value="4"/>4
<input type="radio" name="preg1" value="5"/>5
</div>
</div>
<div id="cuestionario" class="radios">
<label>2. Segundo enunciado del cuestionario</label>
<div class="respuestas">
<input type="radio" name="preg2" value="1"/>1
<input type="radio" name="preg2" value="2"/>2
<input type="radio" name="preg2" value="3"/>3
<input type="radio" name="preg2" value="4 />4
<input type="radio" name="preg2" value="5"/>5
</div>
</div>
resultados: (req, res) => {
console.log(req.body)
try {
const db = dbConnection();
db.connect(function (err) {
if (err) throw err;
var insert = " INSERT INTO xxxxx (PR1, PR2, PR3, PR4, PR5) VALUES ('" +req.body.PR1+ "', '" +req.body.PR2+ "', '" +req.body.PR3+ "', '" +req.body.PR4+ "', '" +req.body.PR5+ "');
La problemática es que desconozco como se puede guardar adicionalmente otro valor del mismo input, es decir, cuando un usuario escoge por ejemplo el valor 1 en una pregunta del cuestionario, en la base de datos se debe registrar en un campo el valor 1 y en otro campo el valor 5.
Los valores para el nuevo campo invertido quedarían así: 1=5, 2=4, 3=3, 4=2, 5=1.
Quien escoja el valor 4 en una pregunta del cuestionario, en la base de datos se tiene que registrar en un campo el valor directo 4 y en otro campo el valor invertido 2. (Espero haberme explicado lo mejor posible).
Posteriormente cuando estén los valores directos y los invertidos registrados, se tienen que hacer operaciones matemáticas que también desconozco realizar. Por ejemplo, PR1(valor directo) + PR1X (valor invertido).
¡Muchas gracias a todos!
Valora esta pregunta


0