Como la cantidad de preguntas y respuesta, puede variar de un cuestionario a otro, en el campo respuestas lo tengo así
<input name="respuestas[<?=$i?>]" type="text" value="Respuesta <?=$i?>" size="25">
Tengo mi tabla preguntas
Y mi tabla respuestas...
El detalle es que todo va bien, excepto porque mi tabla respuestas, solo guarda los 4 ultimos valores del formulario, en lugar de los 16 correspondientes, mi codigo es este....
Código PHP:
Ver original
public function agregar_preguntas1($id){ global $mysqli; $mi = new MultipleIterator(); $mi->attachIterator(new ArrayIterator($_POST[preguntas])); $mi->attachIterator(new ArrayIterator($_POST[rubro])); $mi1 = new MultipleIterator(); $mi1->attachIterator(new ArrayIterator($_POST[respuestas])); $mi1->attachIterator(new ArrayIterator($_POST[orden])); foreach($mi as $value){ $query = "INSERT INTO preguntas SET id_cuestionario='$_REQUEST[id]',pregunta='$pregunta',rubro='$rubro'"; } foreach($mi1 as $value1){ $query_s="SELECT * FROM preguntas WHERE id_cuestionario='$_REQUEST[id]'"; if ($sql_s = $mysqli->query($query_s)) { while($preg = $sql_s->fetch_assoc()){ $sql = "INSERT INTO respuestas SET id_pregunta='$preg[id]',id_cuestionario='$_REQUEST[id]',respuesta='$respuesta',orden='$ord'"; } } } //header("Location: $URL/index.php?nav=a&content=cuestionarios&msj=1"); }