PHP - a vueltas con los radio buttons

 
Vista:
sin imagen de perfil

a vueltas con los radio buttons

Publicado por Daniel (43 intervenciones) el 29/06/2017 20:52:39
Buenas,
atascado por enésima vez, no les tengo aprecio a estos radios ya que me dan siempre quebraderos de cabeza... en esta ocasión me tienen K.O.

Vamos a ver, tengo una tabla variable, esto es, tiene tantas filas como asignaturas tenga un profesor... y en cada asignatura, se escribe un indicador en un textarea, y se marca una opción de radiobutton.

Este es el código empleado en la tabla:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
            $user=$_SESSION['MM_Username'];
			$sql_asignaturas_nombre = mysql_query("SELECT * FROM profesorado WHERE usuario = '$user'");
            while($row_asignaturas_nombre=mysql_fetch_array($sql_asignaturas_nombre))
              {
				  $asig_nombre=$row_asignaturas_nombre['asignatura'];
                echo "<tr><td bgcolor='#02C0FD' valign='middle' colspan='2' scope='col' style='text-align: center'>"
                       .$row_asignaturas_nombre['asignatura']."<input type='hidden' name='hidden_asig[]' value='".$asig_nombre."'></td></tr>
						   <tr>
							   <td>Indicador 1<textarea name='T1indicador1[]' cols='100' rows='2' maxlength='800'></td>
							   <td>
							   			<input type='radio' value='Muy Alto' name='T1Radioindi1[]'>Muy Alto
										<input type='radio' value='Alto' name='T1Radioindi1[]'>Alto
										<input type='radio' value='Medio' name='T1Radioindi1[]'>Medio
										<input type='radio' value='Bajo' name='T1Radioindi1[]'>Bajo
								</td>
						   </tr>";
              }
?>


Hasta aqui todo bien, el problema es grabarlo en la BD... uso esto:

1
2
3
4
5
6
7
8
9
10
11
12
<?php
if(isset($_POST["grabardatos"]))
{
  $i=0;
foreach($_POST['hidden_asig'] as $hidden){
 
        $insertar=mysql_query("INSERT INTO calidad_indic_trim (asignatura, t1ind1, t1ga1) VALUES ('".$hidden."', '".$_POST['T1indicador1'][$i]."', '".$_POST['T1Radioindi1'][$i]."')");
		$i++;
		}
}
 
?>

El campo asignatura me lo graba bien, los textareas también bien, el problema son los buttons, graba para la primera asignatura pero el resto lo deja en blanco... y ya no se por dónde tirar.
Llevo horas, así que de nuevo, sois mi ultima esperanza ;)

Un saludo a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

a vueltas con los radio buttons

Publicado por Daniel (43 intervenciones) el 29/06/2017 22:18:26
Arreglado!!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
            $user=$_SESSION['MM_Username'];
			$sql_asignaturas_nombre = mysql_query("SELECT * FROM profesorado WHERE usuario = '$user'");
            while($row_asignaturas_nombre=mysql_fetch_array($sql_asignaturas_nombre))
              {
				  $asig_nombre=$row_asignaturas_nombre['asignatura'];
                echo "<tr><td bgcolor='#02C0FD' valign='middle' colspan='2' scope='col' style='text-align: center'>"
                       .$row_asignaturas_nombre['asignatura']."<input type='hidden' name='hidden_asig[]' value='".$asig_nombre."'></td></tr>
						   <tr>
							   <td>Indicador 1<textarea name='T1indicador1[]' cols='100' rows='2' maxlength='800'></td>
							   <td>
							   			<input type='radio' value='Muy Alto' name='T1Radioindi1[]"
                       .$row_asignaturas_nombre['asignatura']."'>Muy Alto
										<input type='radio' value='Alto' name='T1Radioindi1[]"
                       .$row_asignaturas_nombre['asignatura']."'>Alto
										<input type='radio' value='Medio' name='T1Radioindi1[]"
                       .$row_asignaturas_nombre['asignatura']."'>Medio
										<input type='radio' value='Bajo' name='T1Radioindi1[]"
                       .$row_asignaturas_nombre['asignatura']."'>Bajo
								</td>
						   </tr>";
              }
?>

1
2
3
4
5
6
7
8
9
10
11
12
<?php
if(isset($_POST["grabardatos"]))
{
  $i=0;
foreach($_POST['hidden_asig'] as $hidden){
 
        $insertar=mysql_query("INSERT INTO calidad_indic_trim (asignatura, t1ind1, t1ga1) VALUES ('".$hidden."', '".$_POST['T1indicador1'][$i]."', '".$_POST['T1Radioindi1'.$row_asignaturas_nombre['asignatura']][$i]."')");
		$i++;
		}
}
 
?>

no hay nada como preguntar desesperado para que te salga....
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar