Incremetar numero de registro de acuerdo al contador

Resulta que tengo un formulario en el cual se insertan varios registros a la vez lo hago por medio de un arreglo pero quiero que por medio de una caja de texto el usuario introduzca el numero de registro que se formen en el formulario, espero darme a entender como podría hacer eso, tal vez sea algo muy fácil sin embargo soy nueva en esto.

1 respuesta

Respuesta
1
Puedes crear una página inicial con un formulario y un campo de texto que indique cuantos campos vas a usar, le haces submit y te envía al segundo formulario que recibe el no de campos y con php se genera automáticamente, algo así
form1.php:
<form method="post" action="form2.php">
escriba el no. de campos: <input type="text" name="campos"/>
<input type="submit" value="enviar" />
</form>
form2.php
<form method="post" action="procesar.php">
<?php
$campos = $_POST['campos'];
// este es el bucle que genera los campos
for($cont=0 ; $cont < $campos; $cont++ ) :
?>
campo <?php echo $cont ?><input type="text" name="campo<?php echo $cont ?>" /><br />
<?php
endfor;
?>
<input type="submit" value="enviar" />
</form>
Hola:
Pues probé tu código y si funciona, sin embargo al pasarlo al mio, no se que estoy haciendo mal por que ya no me jala, el primer formulario lo deje igual que el tuyo pero quiero acoplar a una tabla y es la siguiente:
<table width="1381" border="1" bgcolor="#FFFFFF">
<tr>
<th width="85" scope="col">CANTIDAD</th>
<th width="227" scope="col">DESCRIPCION</th>
<th width="213" scope="col">USO</th>
<th width="211" scope="col">SOLICITA</th>
<th width="293" scope="col">RESPONSABLE</th>
</tr>
<?php
$campos =POST['campos'];
//$i=0;
for($i=0;$i<campos;$i++){?>
<tr>
<td><label>
<input name="cantidad[<?php echo $i; ?>]" value="" type="text" size="15" />
</label></td>
<td><label>
<input name="descripcion[<?php echo $i; ?>]" value="" type="text" size="40" />
</label></td>
<td><label>
<input name="uso[<?php echo $i; ?>]" value="" type="text" size="40" />
</label></td>
<td><label>
<input name="solicita[<?php echo $i; ?>]" value="" type="text" size="40" />
</label></td>
<td><label>
<input name="responsable[<?php echo $i; ?>]" value="" type="text" size="40" />
</tr>
<br>
<?php }?></label></td>
</table>
<p> </p>
<p>
<input type="submit" name="Submit" value="GUARDAR" />
</p>
</form>
</body>
</html>
<?php
}
Espero y me puedas ayudar y de antemano gracias.
Te sugiero que al inicio de tus scripts escribas la linea de php:
error_reporting(E_ALL);
Que te muestra los detalles de los errores que tengas, en el script que me mandaste, el post debe ir así:
$campos = $_POST['campos'];
y en el for te falta el $
for($i=0;$i<$campos;$i++){?>
Gracias ya hice los cambios que me dijiste pero me marca este error
Notice: Undefined index: campos in C:\xampp\htdocs\pruebas.php on line 29
Recuerda que esta página se carga llamándola desde la página anterior, porque si la cargas directamente, pues la variable post esta vacía. Esto es así, para que esta página pueda recibir la variable campos, del formulario anterior.
Si, de hecho así lo hago pero me manda el error que anteriormente te envíe, no se por que o cual sea el motivo.
Revisa que el input que estas enviando se llame "campos" no otra cosa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas