Bueno .. como dice josemi .. hay q usar Arrays en la definición de los nombres de tu Radios y de tus variabels en general ..
Tambien, tendrías que pasar el ID de la pregunta al script que hagas el UPDATE o INSERT (aquí hay un lio enorme ...) .. Esto es debido a que si borras algun registro de preguntas conforme usas el campo incremental te va a dar saltos de preguntas (ID_preg) NO correlativos ..
Código PHP:
<?
$con=mysql_connect("localhost","","") or die (mysql_error());
mysql_select_db("prueba",$con) or die (mysql_error());
$query="select * from preguntas";
$query_result=mysql_query($query,$con) or die (mysql_error());
// crear una variabel contador .. para evitar problemas con los radios arrays ..
$contador=1;
while($rows=mysql_fetch_array($query_result)){
// es necesario pasar tu ID de la pregunta . aunque coincida al ser autonumerico en algun momento podría no ser correlativo
echo "<input type=\"hidden\" name=\"id_preg[".$contador."]\" value=\"".$rows["id_preg"]."\">";
echo"<tr>";
echo"<td>".$rows["id_preg"]."</td>";
echo"<td>".$rows["preg"]."</td>";
echo"<td><select name=\"factorK[".$contador."]\"><option value=\"3\" selected>3<option value=\"2\">2<option value=\"1\">1</select>\n</td>";
echo"<td>".$rows["respp1"]."<input type=\"radio\" name=\"valresp[".$contador."]\" value=\"3\"></td>";
echo"<td>".$rows["respp2"]."<input type=\"radio\" name=\"valresp[".$contador."]\" value=\"2\"></td>";
echo"<td>".$rows["respp3"]."<input type=\"radio\" name=\"valresp[".$contador."]\" value=\"1\"></td>";
// incrementar el contador a cada pasada del bucle (a cada registro que muestes)
$contador++;
}
echo"</tr>\n";
echo"<tr>";
echo"<td><input type=\"submit\" name=\"submit\" value=\"enviar\"></td>";
echo"</form>";
echo"</tr>";
echo"</table>";
?>
Y aquí tienes un ejemplo de como acceder a los valores de todos esos arrays que has pasado ...
Código PHP:
<?
$total_preguntas=count($_POST['id_preg']);
$contador=1;
echo "ID_preg --> FactorK --> Valor respuesta<br>";
for ($contador=1; $contador <= $total_preguntas; $contador++){
echo $_POST['id_preg'][$contador]." --> ".$_POST['factorK'][$contador]." --> ".$_POST['valresp'][$contador]."<br>";
}
Sobre la tabla "chequeo" .. No entiendo que relación mantiene con "preguntas" .. Tampoco veo muy claro el tema de guardar "totales" .. Totales en cada registro . cuando lo que deberias hacer es el calculto de total (un SUM(campotabla)) de los registros que muestres en el momento de hacer la consulta ...
Un saludo,